JavaScriptのスレッド処理
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-戻る
--[[JavaScript]]
--[[HTML5 JavaScript API]]
*目次 [#u10ef94f]
#contents
*概要 [#re11bc29]
[[setTimeout>#r554f1d2]] や [[setInterval>#s9c2a585]]、最...
*並行処理 [#c7dbeba8]
**疑似の並行処理 [#f1b9a890]
-もともとJavaScriptはシングルスレッドの実装しかできなかっ...
-このため、メッセージループを手動でタイムスライスするよう...
***setTimeout [#v0ab9256]
指定された遅延の後に、コードの断片または関数を”一回だけ”...
***setInterval [#r4a90e44]
指定された遅延の後に、コードの断片または関数を”繰り返し”...
**真の並行処理 [#n6cd0063]
***[[Web Workers (JavaScript)]] [#r3f78883]
前述の[[setTimeout>#r554f1d2]]や[[setInterval>#s9c2a585]]...
Web Workersでスレッド機能を追加し、真の「並行処理」ができ...
*非同期 [#qd9fbfb7]
-呼び出し元(関数やUI)をブロックしない。
-呼び出し元と、並列して処理を行う。という意味で[[前述>#c7...
-しかし、コチラは、イベントキュー・ベースのシングルスレッ...
**[[従来型コールバック>#c0bd2b83]] [#kc172486]
**[[Promise (JavaScript)>#k3c4b06f]] [#rc7d381e]
**[[async/await (JavaScript)]] [#y021ea75]
*コールバック [#eb6eeb14]
[[並行処理>#n6cd0063]]や[[非同期>#qd9fbfb7]]で使用される...
**従来型コールバック [#c0bd2b83]
以下のように、コールバック地獄に陥り易い。
fetchSomething1(function() {
fetchSomething2(function() {
fetchSomething3(function() {
fetchSomething4(doSomethingFinally);
});
});
});
**[[Promise (JavaScript)]] [#k3c4b06f]
Promiseではコールバックを関数に渡すかわりに、~
コールバックを付属させたPromiseオブジェクトをリターンする...
[[従来型コールバック>#c0bd2b83]]におけるコールバック地獄...
*参考 [#lebcb0c7]
**setTimeout [#l223ccbe]
-window.setTimeout - Web API インターフェイス | MDN~
https://developer.mozilla.org/ja/docs/Web/API/Window/setT...
**setInterval [#d27a251a]
-window.setInterval - Web API インターフェイス | MDN~
https://developer.mozilla.org/ja/docs/Web/API/Window/setI...
**その他 [#zcdc6403]
-Promiseとasync/awaitでJavaScriptの非同期処理をシンプルに...
https://sbfl.net/blog/2016/07/13/simplifying-async-code-w...
-JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの...
https://www.infoq.com/jp/articles/js_multithread_2
-JavaScriptの非同期処理を並列処理と勘違いしていませんか?...
https://qiita.com/klme_u6/items/ea155f82cbe44d6f5d88
終了行:
「[[.NET 開発基盤部会 Wiki>http://dotnetdevelopmentinfras...
-戻る
--[[JavaScript]]
--[[HTML5 JavaScript API]]
*目次 [#u10ef94f]
#contents
*概要 [#re11bc29]
[[setTimeout>#r554f1d2]] や [[setInterval>#s9c2a585]]、最...
*並行処理 [#c7dbeba8]
**疑似の並行処理 [#f1b9a890]
-もともとJavaScriptはシングルスレッドの実装しかできなかっ...
-このため、メッセージループを手動でタイムスライスするよう...
***setTimeout [#v0ab9256]
指定された遅延の後に、コードの断片または関数を”一回だけ”...
***setInterval [#r4a90e44]
指定された遅延の後に、コードの断片または関数を”繰り返し”...
**真の並行処理 [#n6cd0063]
***[[Web Workers (JavaScript)]] [#r3f78883]
前述の[[setTimeout>#r554f1d2]]や[[setInterval>#s9c2a585]]...
Web Workersでスレッド機能を追加し、真の「並行処理」ができ...
*非同期 [#qd9fbfb7]
-呼び出し元(関数やUI)をブロックしない。
-呼び出し元と、並列して処理を行う。という意味で[[前述>#c7...
-しかし、コチラは、イベントキュー・ベースのシングルスレッ...
**[[従来型コールバック>#c0bd2b83]] [#kc172486]
**[[Promise (JavaScript)>#k3c4b06f]] [#rc7d381e]
**[[async/await (JavaScript)]] [#y021ea75]
*コールバック [#eb6eeb14]
[[並行処理>#n6cd0063]]や[[非同期>#qd9fbfb7]]で使用される...
**従来型コールバック [#c0bd2b83]
以下のように、コールバック地獄に陥り易い。
fetchSomething1(function() {
fetchSomething2(function() {
fetchSomething3(function() {
fetchSomething4(doSomethingFinally);
});
});
});
**[[Promise (JavaScript)]] [#k3c4b06f]
Promiseではコールバックを関数に渡すかわりに、~
コールバックを付属させたPromiseオブジェクトをリターンする...
[[従来型コールバック>#c0bd2b83]]におけるコールバック地獄...
*参考 [#lebcb0c7]
**setTimeout [#l223ccbe]
-window.setTimeout - Web API インターフェイス | MDN~
https://developer.mozilla.org/ja/docs/Web/API/Window/setT...
**setInterval [#d27a251a]
-window.setInterval - Web API インターフェイス | MDN~
https://developer.mozilla.org/ja/docs/Web/API/Window/setI...
**その他 [#zcdc6403]
-Promiseとasync/awaitでJavaScriptの非同期処理をシンプルに...
https://sbfl.net/blog/2016/07/13/simplifying-async-code-w...
-JavaScriptによるマルチスレッドの実現‐Concurrent.Threadの...
https://www.infoq.com/jp/articles/js_multithread_2
-JavaScriptの非同期処理を並列処理と勘違いしていませんか?...
https://qiita.com/klme_u6/items/ea155f82cbe44d6f5d88
ページ名: