問題タブ [single-threaded]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
753 参照

javascript - シングルスレッド言語としての JavaScript の setInterval と clearInterval

JavaScriptでsetIntervalとが動作する方法を理解するのに問題があります。clearInterval

これら 2 つの機能に関するさまざまな記事を読みましたが、まだ混乱しています。

single thread呼び出し時にJavaScript が使用されるという事実を考慮してtest=setInterval(function(){}, t)、関数がミリ秒ごとに実行されるようにスケジュールしtます。私たちでない限りclearInterval(test)

  • どういう意味ですか?ということは、すでに JavaScript のキューに入っているということclearIntervalでしょうか。canclesetInterval
  • setInterval1回だけで何回かしたらどうなるでしょうかclearInterval
  • clearInterval入れますsetIntervalか?
  • JavaScript はスケジュールされたプロセスをどのように処理しますか?
0 投票する
2 に答える
835 参照

java - 開始が遅れる単一スレッド

私がやろうとしていることは次のとおりです。1つのボタンを押すと、単純な値が変更されます。値が 3 秒間変化しない場合、メソッドを実行したい。したがって、ボタンをクリックするたびに開始する(そして他のすべてを殺す)単一のスレッドが必要です。知っている

しかし、遅れることはできません。これを行うためのベストプラクティスは何ですか?

0 投票する
1 に答える
350 参照

node.js - Node.js シングル スレッド VS Tranditonal Web サーバー スレッド プール

私はnode.jsの初心者です。私は現在、 Basarat Ali Syedによる「 Beignning Node.js」という本を読んでいます。

以下は、従来の Web サーバーのスレッド プールの欠点を示す抜粋です。

ほとんどの Web サーバーは、数年前にこの方法でスレッド プールを使用しており、現在も多くのサーバーが使用し続けています。ただし、この方法には欠点がないわけではありません。ここでも、スレッド間で RAM が浪費されます。また、OS は (スレッドがアイドル状態であっても) スレッド間でコンテキストを切り替える必要があり、これにより CPU リソースが浪費されます。

スレッド プール内のスレッド間でコンテキスト スイッチが発生する理由がよくわかりません。私が理解できる限り、タスクの実行中は 1 つのスレッドが持続します。タスクが完了すると、スレッドは次のタスクを自由に受け取ることができます。

So My Q1 : なぜコンテキスト スイッチが必要なのですか? スレッド間のコンテキストの切り替えはいつ行われますか?

My Q2 : node.js が複数のスレッドを使用してイベント キュー内のイベントを処理しないのはなぜですか? より効率的で、イベントのキューイング時間を短縮しませんか?

0 投票する
2 に答える
34 参照

javascript - JavaScript 非同期呼び出しとシングル スレッド モデル

JavaScript タイムラインの実行フェーズ中に、登録されたイベント ハンドラーを非同期的に呼び出すイベントが発生します。非同期呼び出しに関する私の知識によると、プログラムの実行はタスクの完了を待たず、代わりに次のタスクに移動します。では、JavaScript が発生時に単一のイベントに登録された 2 つのイベント ハンドラー関数の非同期実行をどのように処理するのか、誰でも説明できますか?

JavaScriptインタープリターは最初のイベントハンドラーを呼び出して2番目のイベントハンドラーに移動し、最初のイベントハンドラーの実行部分は別のスレッドによって実行されますか?

そして、javascriptがシングルスレッドモデルに従っていると読んだことがありますが、それはどのように適合しますか?

0 投票する
2 に答える
1513 参照

javascript - node.jsでティックが終了したときに指定するイベントは何ですか?

ティックは、nodejsイベントループがキュー内のすべてを実行することを決定する実行単位であると読みましたが、process.nextTick()どのイベントがnode.jsイベントループに新しいティックの処理を開始させるかを明示的に言う以外は? I/O待ちですか?CPUバウンド計算はどうですか?それとも、新しい関数に入るたびですか?

0 投票する
1 に答える
509 参照

java - Java シングル スレッド プログラムが futex と clone システム コールを使用する理由

これは、再帰を使用して、引数として渡された特定の数値の階乗を見つけるシングル スレッド Java プログラムです。

シングルスレッドとして実行されているプログラムに、なぜこれほど多くの futex と clone システムコールが使用されているのか疑問に思っていました。

0 投票する
4 に答える
3321 参照

javascript - javascript の実行中にブラウザーに DOM の変更をレンダリングさせることはできますか?

JavaScript の実行中にブラウザに DOM の変更を強制的にレンダリングさせる方法はありますか? 次の例では、「1000」のみが表示されます。これは、実行中の JavaScript を処理するスレッドが 1 つしかないことが原因であることは理解していますが、ブラウザーに各 DOM 変更を強制的にレンダリングさせる方法があるかどうか疑問に思っていました。

例: