[英]A strange feature of node.js
注意到node.js
一個奇怪功能。
例如:
假設,我在node.js
服務器上有一些變量: var user_id = '1';
,其中存儲了連接到服務器的用戶ID。
user1
有var user = 1;
user2
有var user = 2;
...
user99
有var user = 99;
但是,如果在某個時候我會要求服務器變量user
-我將返回重寫她的最后一個用戶的ID。
那正確嗎? 應該這樣嗎? 我以為每個用戶的node.js
都會創建一個flow/process
...
感謝您的回答!
index.js
dNode({
connect: function(data, callback) {
IM.iUserId = data.user_id;
IM.start();
}
});
im.js
var IM = {
iUserId: false,
start: function() {
console.log(this.iUserId);
}
};
似乎您的所有連接都共享一個全局IM
對象。
您可以使用socket.set
和socket.get
為每個套接字設置/獲取一個值
Node.js是單線程一個上下文,它不會像PHP中那樣為用戶創建任何隔離的上下文。
內部的所有內容都是共享的並且可以交叉訪問。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.