2014-03-05 113 views
0

如果我有一個stream,是有辦法,如果我可以告訴大家,如果被暫停或不?有沒有辦法告訴節點流(v0.10 +)已暫停?

例如,我們可以使用一些isPaused()在我下面有點傻例如:

var readable = getReadableStreamSomehow(); 
var pendingOtherOps = 0; 
readable.on('data', function(chunk) { 
    // about to do something that takes longer relative to our stream, may need to pause 
    if (++pendingOtherOps >= MAX_PENDING) { 
    stream.pause(); 
    } 
    doOtherOp(data, function(err) { 
    if (--pendingOtherOps === 0 && stream.isPaused()) { 
     // ok we've got our other ops under control, lets turn stream back on 
     stream.resume(); 
    } 
    }); 
}); 

現在我使用的是單獨的布爾如果我暫停/恢復和似乎是多餘的信息是我設置已經在流中。

回答

0

沒有,但是:

  1. 可以運行stream.pause(); stream._paused = true並設置該標誌自己
  2. 可以運行stream.resume()即使流沒有被暫停,所以在您的特定情況下,不需要檢查
相關問題