>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Как отследить конец записи в nsIOutputStream? http://forum.mozilla-russia.org/viewtopic.php?id=46935 |
AllSeeingI > 15-11-2010 20:55:18 |
Всем доброго дня, ситуация следующая: записываю в nsIServerSocket большой кусок данных через его output stream: Выделить код Код:onSocketAccepted: function(serverSocket, clientSocket) { this.clientSocket = clientSocket; this.outputStream = clientSocket.openOutputStream(0, 0, 0).QueryInterface(that.Ci.nsIAsyncOutputStream); ... this.outputStream.write(..., ...) Данные пишутся в несколько заходов. Мне надо после окончания записи закрыть соединение. Но как отследить это окончание? asyncWait/onOutputStreamReady не помогают - onOutputStreamReady иногда вызывается, когда часть данные ещё не отдана в сокет. setEventSink на сокете тоже не помогает - почему-то onTransportStatus не вызывается после записи последнего куска. Может есть какое-то решение? Заранее спасибо. |