我試圖申請this,這樣我的服務器就會告訴客戶它何時關閉。我不明白爲什麼服務器不會發射。它看起來像程序在它有機會發出之前關閉,但console.log()起作用。我認爲我的問題可能與process.on的同步性質有關,如here所述,但說實話,我不太瞭解(a)同步在這種情況下的真正含義。另外,如果有幫助,我在Windows 7上。爲什麼io.emit()在process.on()中不起作用?
// catch ctrl+c event and exit normally
process.on('SIGINT', function (code) {
io.emit("chat message", "Server CLOSED");
console.log("Server CLOSED");
process.exit(2);
});
我今天剛開始搞這個東西,所以原諒我的無知。任何幫助是極大的讚賞!
'io.emit'內部可能是異步的。你可能想問問socket.io支持是否有同步版本。 – Bergi