タグ

非同期処理に関するatm_09_tdのブックマーク (13)

  • 【JavaScript】本日未明、[ async - await ]さんが死体で発見され... - Qiita

    「な、なんじゃこりゃあああぁあっtっt!!!!」 ・・・ ・・・ ・・・ 非同期処理を"ちゃんと"理解して使いたい 『非同期処理なんとなくの理解で書いている...』 『動いてるし、ヨシ!』 令和プログラマー*1である私自身、なるべく気を付けようと思っていますが、ついついなんとなくで書いてしまいそうになります。 (*1: 令和になってからプログラミングを知った人。初心者のこと。) ちなみに冒頭のコードは、「並列でいける処理をつい直列でやってしまっている」 例です。 実際に手を動かしながら非同期処理の理解を深める 記事は以下の構成で、順を追って非同期処理を学習し、明日から自信を持って非同期処理が書けるようになるためのハンズオンです。 JSの非同期処理について知る Promise について知る Async / Await を使えるようにする 冒頭のコードがリファクタリングできるようになる 実際

    【JavaScript】本日未明、[ async - await ]さんが死体で発見され... - Qiita
  • PPAPで学ぶDaggerによる非同期処理をZipkinで確認 - きしだのHatena

    前回、Daggerで非同期処理をやってみました。 PPAPで学ぶ、Daggerによる非同期処理 - きしだのはてな ただ、こういうログでの実行結果を見せられて、ほら非同期になってるでしょって言われてもよくわからないと思うので、Zipkinで見てみます。 Zipkinは、GoogleのDapper論文を参考にTwitterが開発してオープンソースにした分散トレースシステムです。 http://zipkin.io/ Zipkinの導入 Docker環境があれば、Dockerで立ち上げるのが簡単だと思います。 docker run -d -p 9411:9411 openzipkin/zipkin NetBeansにDockerを登録しているなら、NetBeansから起動すると便利 直接起動する場合でも、jarを起動するだけなので、そこまで面倒ではないです。 wget -O zipkin.jar

    PPAPで学ぶDaggerによる非同期処理をZipkinで確認 - きしだのHatena
  • PPAPで学ぶ、Daggerによる非同期処理 - きしだのHatena

    前回は、DaggerのDI機能を紹介しました。 PPAPで学ぶDaggerによるDI - きしだのはてな DaggerはDIコンテナとしては知られていますが、非同期処理フレームワークとして使えることはあまり知られていないと思います。機能はあったのに、ドキュメントがなかったし、ドキュメントも非同期処理に使えることがわかりにくいし。 https://google.github.io/dagger/producers.html サーバーサイドではSpringFrameworkやCDIなどのDIコンテナがすでに使われているのと、DaggerのDIでは機能不足であるため、Daggerが候補になることはあまりありません。 でも、非同期処理フレームワークとしてであれば、SpringFrameworkやCDIを使っている状況でも有用です。 ExecutorModuleの定義 非同期処理を行うために、スレッ

    PPAPで学ぶ、Daggerによる非同期処理 - きしだのHatena
  • 俺たちはJavaScriptの非同期処理とどう付き合っていけば良いのだろうか - Qiita

    おきまりのやつ CYBIRDエンジニア Advent Calendar 2015 2日目担当の @keitarou です。 イケメンスタジオという謎の組織でWEBエンジニアをしております。 最近はNode.jsを使った大規模分散アプリケーションみたいなものを作ってます。 今回のCYBIRDエンジニア Advent Calendarの仕切り役みたいなのもやっています。みんな協力してくれるいい会社だなぁと 1日目は(@gotyoooo)さんの最近のCYBIRDゲームインフラ環境についてでした。うちのインフラエンジニアは超優秀だと思います。転職希望の方はご連絡ください。 はじめに ES6, Promise, Generatorなどの登場によってJavaScriptの非同期処理の実行パターンのバリエーションが一気に増えた気がします。 今回は今現在、どういった手法が存在するのか、どういうメリット・デ

    俺たちはJavaScriptの非同期処理とどう付き合っていけば良いのだろうか - Qiita
  • JavaScriptは如何にしてAsync/Awaitを獲得したのか: がおさんち 技術部屋

    JavaScriptを記述する上で、避けて通れないのが非同期処理。 人類は、長い年月、この非同期的な処理を「如何にして書きやすく、読みやすく記述するか」について探求してきました。 要するに†闇†の塊なのですね。(闇に飲まれよ!!!!) この物語は、そんな†闇†の存在だった非同期処理を、人類がどのように苦しみ、そしてどのように解決していったかを書いていくポエムである。 補足:厳密には、JSはシングルスレッドで動くため、非同期処理は存在しない!と言ってしまえばそこまでなのですが、今回はsetTimeoutやajax通信、onloadイベント登録など、見かけ上、非同期的な挙動を示すものすべてを対象に話していきます。 第一章 ~人類はsetTimeoutを採用しました~ 古代のJavaScriptで、以下のような処理をしたい場合、どうしていただろうか。 「ブラウザ更新直後に『a』を表示し、その2秒

  • 詳解 Java SE 8 第21回 Concurrency Utilitiesのアップデート その3

    今回も前回に引き続き、Concurrency UtilitiesのCompletableFutureクラスを紹介していきます。 CompletableFutureクラスはFutureインタフェースを実装したクラスで、非同期に処理する複数のタスクを組み合わせて実行することができます。前回、非同期処理するタスクを組み合わせる手法について紹介しました。 今回は、非同期処理の制御に関する機能について紹介します。また、これまでは非同期に処理するタスクが正常に完了していた場合のみを取り上げていましたが、例外が発生した場合についても取り上げます。 非同期処理の制御 CompletedFutureクラスが実装しているFutureインタフェースは、結果の取得や処理のキャンセルなどの機能を定義しています。CompletedFutureクラスはこれらの機能に加え、独自の機能を提供しています。表1に主なメソッドを

    詳解 Java SE 8 第21回 Concurrency Utilitiesのアップデート その3
  • JavaScript Promiseの本

    この書籍はCreative Commons Attribution-NonCommercialの ライセンス で公開されています。 また、PDFとしてレンダリングしたバージョンは以下からダウンロードすることができます。

    JavaScript Promiseの本
  • 非同期処理の基礎

    MPAなWebフレームワーク、Astroの紹介 (その1) 2024/05/17の勉強会で発表されたものです。

    非同期処理の基礎
  • Flow.js

    非同期プログラミングを驚きのシンプルさに ver 1.0.1 and more. http://uupaa.hatenablog.com/entry/2013/03/12/185555 http://uupaa.hatenablog.com/entry/2013/03/14/131556Read less

    Flow.js
  • [Ruby on Rails] Sidekiq で非同期処理を実装する | DevelopersIO

    Sidekiq とは Sidekiq とは Rails アプリで非同期処理を行うためのライブラリです。複数のジョブを同時に実行することができ、メモリを節約することができます。 ということで今回は Sidekiq の基と使いかたをざっくりと学んでいきたいと思います。 Sidekiq を使ってみる インストール まず前提条件として Redis が必要なのでインストールしましょう。Redis はジョブの管理に使われています。 brew install redis インストールは Gemfile に追加して bundle install するだけです! vim Gemfile # gem 'sidekiq' を追加 bundle install Worker を実装する 非同期処理を行うクラスは Sidekiq::Worker を include してつくります。あとは perform メソッド

    [Ruby on Rails] Sidekiq で非同期処理を実装する | DevelopersIO
  • Deferred/Promisesと非同期処理 - 素人がプログラミングを勉強していたブログ

    概念/仕組み Deferred/Promisesは非同期処理を簡単にするための取り決め。 callback hellと呼ばれているような、非同期処理によるコールバックのネストを軽減することができて非常に便利。 慣れれば便利だが、一見どう使えばいいのか分かりづらいので、少し解説を書く。 ここではPromises/Aという仕様を実装したQというライブラリを使うが、jQuery.Deferredなどもほぼ同じである。 まず、Deferred/Promisesは、関数のreturn、try/catchの非同期版である。 www.example.comの内容を取得し、正しく取得できたら中身を表示し、取得できなければエラーを表示する、というプログラムは 同期的なコードでは、 function get() { var req = new XMLHttpRequest(); req.open('GET',

    Deferred/Promisesと非同期処理 - 素人がプログラミングを勉強していたブログ
  • timeline.js という非同期処理連携用ライブラリを作成 (それなりブログ)

    timeline.js timeline.js という非同期処理同士を連携させるライブラリを書きました ライブラリの主な目的は以下の2点です 1. 非同期処理同士の分離性を高めること 2. 連携状況をわかり易くすること 作った直接の理由は 「アニメAとBが終わったらCを実行して Cが終わったらXとYとZを1秒ずらして実行して その3つが終わったらムービー終了」 ・・・とこのような複雑な非同期処理の絡み合いを、後で読めるように書くためです なお、JSDeferred に超依存しています 使い方の例 var timeline = Timeline.factory(); var layer1 = timeline.createLayer(); var layer2 = timeline.createLayer(); var layer3 = timeline.createLayer(

  • Node.js : 非同期処理 : typeOf 'aki_mana'

    クライアントサイドでは cho45さんのライブラリなんか結構便利なんですが、 ここが詳しい。Async.js というライブラリに言及してます。 Node の標準サンプルには「コールバックを深く掘り下げるコールバックチェーンとか呼ばれる方式」で照会されます。 でも、コードは、シーケンシャルに書きたいよね。ってときに。 非同期処理を考えることになります。 追記) 2013-04-10 上のとは違いますが、意外とポピュラーなのが、caolan/async.js かも。 こちらは「幾つものユーザ関数のそれぞれをタスクとして捉え、全タスクを処理し、最後に結果を返せばいいんだろ?なら、シンプルなコールバックに纏めることができるぜ!?」てのが 基コンセプトのようです。 要点1)「複雑にネストしまくる処理をシンプルなコールバック関数に纏める」のが目的のモジュール。 // var rslt = async

    Node.js : 非同期処理 : typeOf 'aki_mana'
  • 1