ここに私の問題に関する場面があります。javascriptでは、varをロックできますか?
私はリモートサーバから取得したデータをバッファするvar dataCacheを作成します。私はこのように30秒ごとにdataChacheを更新します。
setInterval(function(){
instance.loadJsonFromRemote(configuration.dataUrl,function(data){
instance.dataCache = data;
});
}, 30000);
おそらく、更新中のデータと同時に正確にアクセスされます。例えば
、ラン上記
var cool = instance.dataCache.cool
コードデータ更新コードの実行中、
instance.dataCache = data;
ノーならば、それは、アクセス中の可能な解決策は、ロックデータキャッシュアップあろう推測1つはアクセスし、設定することができます。
私はおそらくC#でロックのようなものが必要ですが、JavaScriptでどうやって行うのか分からず、JavaScriptでも問題がないかもしれません。coz JSはシングルスレッドです。私はJSにあまり精通していません。
"JSはシングルスレッドであり、正常に動作します"。 varをロックする必要はありません – R3tep
https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoopをご覧ください。あなたは正しいです、ロックのようなものの必要はありません。 –
これもあります:http://stackoverflow.com/questions/2734025/is-javascript-guaranteed-to-be-single-threaded私はあなたのケースであなたにどの程度影響を与えるかもしれません。場合によっては投稿してください。 –