我有一個在後臺運行在我的服務器上的進程。對象以這種方式導出將變量傳遞給正在運行的node.js程序
module.exports = new Application()
因爲我只希望對象的一個實例永遠存在。
然後我有一個單獨的過程,試圖調用Application
的原型函數process
。它看起來像這樣
var app = require('./Application.js');
app.process(process.argv[2]);
並說這個文件被稱爲process.js
。然後我會打電話node process.js thing_to_pass
問題是,每次我這樣做,它都會重新實例化application
,這會導致我不尋找的行爲。
我該如何解決這個問題?我正在考慮使用socket.io
在兩個進程之間進行通信,但這看起來很駭人聽聞。
爲什麼它聲明一個新的應用程序實例?爲什麼它不只是拉入已經存在的那個? – Loourr
因爲您正在使用兩個不同的進程,它們是完全獨立的。 – bendecoste