Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
アクターモデル(英: actor model)は、並行計算の数学的モデルの一種[1]。1973年、カール・ヒューイット、Peter Bishop、Richard Steiger が発表した。並行性の理論的理解のフレームワークとして使われるほか、並行システムの実装の理論的基礎としても利用される。 アクターモデルはそれ以前の計算モデルとは異なり物理法則を発想の基本としている。他にも、LISP言語、Simula言語、ケーパビリティ・システム、パケット通信、初期のSmalltalkなどの影響を受けている。 アクターモデルは、近い将来に「数百・数千のマイクロプロセッサから構成され、個々にローカルメモリを持ち、高性能通信ネットワークで通信を行う並列コンピュータ」が登場するとの予測に基づいて開発されされた[2]。その後、Webサービスやメニイコアアーキテクチャを活用した超並行性を想定して研究された。 ヒ
前回に引き続き、ECMAScript 2015(ECMAScript 6)で新たに追加されたPromiseについて、その概要を全2回に渡って紹介します。今回は後編です。 前回のおさらい 前回は、こんなふうにPromiseを使うという例を紹介しました。それは、以下のようにAjaxでAPIにアクセスする例でした。 var fetchSomething1 = function() { return new Promise(function(resolve, reject) { // API1にアクセス doAjaxStuff(someOptions1, { success: function(data) { // 成功した場合 resolve(); }, fail: function() { // 何かしらエラーが発生した場合 reject({ message: 'APIにアクセスできませんでし
ECMAScript 2015(ECMAScript 6)で新たに追加されたPromiseについて、その概要を全2回に渡って紹介します。 ひとつずつ処理されるJavaScript まず、Promiseについて解説する前に、基礎的なことではありますが、JavaScriptのコードがどのようにJavaScriptエンジンに処理されるかについて、軽く解説しておきましょう。例えば以下の様なコードがあったとします。 var result1 = 1 + 2; // 3 var result2 = result1 + 100; // 103 /* functionらを準備 */ var doSomething1 = function() { document.getElementById('price').value = result2; }; var doSomething2 = function()
(function (root) { 'use strict'; function Retmise(options) { if (this == null || this.constructor !== Retmise) { return new Retmise(options); } options = options || {}; options.retries = options.retries != null ? options.retries : 5; options.delay = options.delay != null ? options.delay : 500; options.timeout = options.timeout != null ? options.timeout : 0; options.onRetry = typeof options.onRetry
コールバック地獄を解消するPromiseパターン Promiseは非同期処理のデザインパターンの一つです。非同期処理関数の戻り値として「処理の途中」を意味するオブジェクトを返す事で、かゆいところに手を届くようにします。ちなみに言語によってはFutureと呼ばれることもあります。(参考: future - Wikipedia) 言語によって何が利点になるかは微妙に異なりますが、JavaScriptではコールバック地獄を抑止できる事が大きいでしょう。 JavaScriptでよく見られる非同期処理は、処理結果をコールバック関数で受けるパターンですね。標準APIでも頻繁に用いられています。
原文と比べた結果、この記事には多数の(または内容の大部分に影響ある)誤訳があることが判明しています。情報の利用には注意してください。 正確な表現に改訳できる方を求めています。 (2019年8月) 計算機科学におけるメッセージ (英: message) とは、情報の伝達を目的とする、順序付けられた文字列である。JISでは、情報理論および通信理論におけるmessageの訳語として通報[1]という用語が割り当てられている[注釈 1]。 メッセージパッシング (英: message passing) とは、並行計算・並列計算、オブジェクト指向、プロセス間通信で使われる通信方式である。プロセスもしくはオブジェクトといったモデルではメッセージ(ゼロ以上のバイト、複雑なデータ構造、プログラムコードも含む)を送ったり受けたりできる。メッセージを待つことによって同期することもできる。メッセージパッシングに基
Promises, also know as deferreds or futures, are a wonderful abstraction for manipulating asynchronous actions. Dojo has had Deferreds for some time. jQuery introduced its own Deferreds in version 1.5 based on the CommonJS Promises/A specification. I’m going to show you some recipes for working with jQuery Deferreds. Use these techniques to turn callback-based spaghetti code into elegant declarati
JavaScript でスマートに非同期なコードを書くための Promise パターンの仕様(改良版)の邦訳です。原文(英語) お約束の文言ですが、この翻訳は間違ってるかもしれません。ご指摘・ご質問は大歓迎です。 Promise/A+ この提言はPromises/A 仕様の提言の振る舞いを明確にし、かつ事実上の標準をカバーしつつ曖昧・問題のある部分を除いたものである。 Promises/Aと同様に、この提案はPromiseの作成・解決訳注 1・棄却訳注 2の方法については言及しない。 Promises/AからPromises/A+へのすべての差分は、Promises/Aとの差分(英語)に記述してある。 1. 概要 promise は、ある時点でまだ利用できない値を表現する。 promise を利用する主な方法としてthenメソッドがある。 2. 用語 2.1. 「 promise 」とは、
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015. * Some parts of this feature may have varying levels of support. Learn moreSee full compatibilityReport feedback プロミス (Promise) は、作成された時点では分からなくてもよい値へのプロキシーです。非同期のアクションの成功値または失敗理由にハンドラーを結びつけることができます。これにより、非同期メソッドは結果の値を返す代わりに、未来のある時点で値を提供するプロミスを返すことで、同期メソッドと同じように
JavaScript Promiseの本 azu Table of Contents はじめに ....................................................................................................................... 3 書籍の目的 ........................................................................................................... 3 本書を読むにあたって ........................................................................................... 3 表記法 .....
var p = new Promise(function(fulfill, reject){ console.log("start"); fulfill(""); }); p.then(function(result){ console.log("1-1"); }).then(function(result){ console.log("1-2"); }).then(function(result){ console.log("1-3"); }); p.then(function(result){ console.log("2-1") }).then(function(result){ console.log("2-2"); }).then(function(result){ console.log("2-3"); });
@armorik83です。ちょっと一段落ついたところで、そろそろ真剣にPromiseの中身を読む必要があるなーと感じたので、そのときのメモです。 読んだ実装 今回はjakearchibald/es6-promise v2.0.1を読んでいきます。基礎知識としてJavaScript Promiseの本にも目を通しておくとよいでしょう。 サンプルソース サンプルとしてPromise本の1.3.1を若干改変して利用させてもらいました。 var Promise = require('es6-promise').Promise; function getURL(URL) { return new Promise(function (resolve, reject) { var req = new XMLHttpRequest(); req.open('GET', URL, true); req.on
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く