0

の奇妙な機能に気づきましたnode.js

例えば:

たとえば、node.jsserver: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);
    }
};
4

2 に答える 2

3

すべての接続が共有している1 つのグローバルIMオブジェクトがあるようです。


socket.setとを使用して、各ソケットの値を設定/取得できます。socket.get

于 2013-07-26T14:05:52.380 に答える
1

Node.js はシングル スレッド 1 コンテキストであり、PHP のようにユーザーに対して分離されたコンテキストを作成しません。

内部のすべてが共有され、クロスアクセス可能です。

于 2013-07-26T14:07:04.757 に答える