空の配列を宣言し、4 つのプロセスを開き、同時に配列に値をプッシュします。プッシュが入力される順序は何ですか?
js には複数のプロセスがあり、配列を同時に変更することは不可能であるという話は聞いたことがありません。他の専門家が見てもらえるようにコードを投稿できます
NodeJSで書くべきです
簡単な実験は以下の通りです。複数のプロセス(タスク)が動作する場合、配列の値は最後のプロセスに依存します。 2 setTimeout 和 1个setInterval 同时操作一个数组,并分别 push を使用して 3 つの値 1、2、3 を入力すると、最終結果は次のようになります:
setTimeout
setInterval
push
Ruan Yifeng の記事に明確な説明があります: シングルスレッドとは、すべてのタスクをキューに入れる必要があり、前のタスクが完了するまで次のタスクは実行されないことを意味します。前のタスクに時間がかかると、次のタスクも待たされることになります。 ;原文を表示
テストしてみると、プッシュが成功するたびにこの配列を出力することがわかります
js には複数のプロセスがあり、配列を同時に変更することは不可能であるという話は聞いたことがありません。他の専門家が見てもらえるようにコードを投稿できます
NodeJSで書くべきです
簡単な実験は以下の通りです。複数のプロセス(タスク)が動作する場合、配列の値は最後のプロセスに依存します。 2
リーリーsetTimeout
和 1个setInterval
同时操作一个数组,并分别push
を使用して 3 つの値 1、2、3 を入力すると、最終結果は次のようになります:Ruan Yifeng の記事に明確な説明があります: シングルスレッドとは、すべてのタスクをキューに入れる必要があり、前のタスクが完了するまで次のタスクは実行されないことを意味します。前のタスクに時間がかかると、次のタスクも待たされることになります。 ;原文を表示
テストしてみると、プッシュが成功するたびにこの配列を出力することがわかります