很抱歉,如果我问了一个愚蠢的问题,我正在使用下面关于nodejs长轮询的示例。http://www.stoimen.com/blog/2010/12/02/diving-into-node-js-a-long-polling-example/
我理解他们中的大多数,但只有一件事我不太理解,尽管我已经做了成千上万的搜索。
fs.stat('filepath', function(err, stats) {
// if the file is changed
if (stats.mtime.getTime() > request.socket._idleStart.getTime()) {
// read it
fs.readFile('filepath', 'utf8', function(err, data) {
// return the contents
response.writeHead(200, {
'Content-Type' : 'text/plain',
'Access-Control-Allow-Origin' : '*'
});
// return response
response.write(data, 'utf8');
response.end();
// return
return false;
});
}
});"request.socket._idleStart“部分,参数_idleStart的含义是什么?实际上,我试图打印出整个request对象,并得到以下参数。
_readableState:
{ highWaterMark: 16384,
buffer: [],
length: 0,
pipes: null,
pipesCount: 0,
flowing: false,
ended: false,
endEmitted: false,
reading: false,
calledRead: false,
sync: true,
needReadable: false,
emittedReadable: false,
readableListening: false,
objectMode: false,
defaultEncoding: 'utf8',
ranOut: false,
awaitDrain: 0,
readingMore: false,
decoder: null,
encoding: null },
readable: true,
domain: null,
_events: {},
_maxListeners: 10,
socket:
....
...
...我想知道是否有描述这些参数的文档,谢谢您的帮助!
发布于 2013-11-07 12:52:18
这些带有_下划线的参数用于维护套接字的状态,而不是用来处理它们的。有些功能比那些功能更可靠。
来自node.js文档
readable._read 注意:不应直接调用此函数。它应该由子类实现,并且仅由内部可读的类方法调用。 所有可读流实现都必须提供一个_read方法,以便从底层资源中获取数据。 此方法以下划线为前缀,因为它是定义该方法的类的内部,不应由用户程序直接调用。但是,您需要在自己的扩展类中重写此方法。
https://stackoverflow.com/questions/19830392
复制相似问题