並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 271件

新着順 人気順

asyncの検索結果41 - 80 件 / 271件

  • 最速攻略! Reactの `use` RFC

    皆さんこんにちは。最近のReact界隈で話題になっているのは次のRFCです。 そこで、この記事ではさっそくRFCを理解することを目指します。 ただし、このRFCはSuspenseに深く関わるものです。SuspenseはReact 18でもう正式リリースされていますから、この記事ではSuspenseは前提知識とします。もしまだSuspenseをよく知らないのであれば、ぜひ次の記事で学習してください。 また、RFCはあくまでReactの新機能のアイデアを公開するものであり、これが必ず実装されるとは限らない点にご注意ください。例えば、過去にはuseEventというRFCが注目を集めていましたが、意見が集まった結果としてそのRFCは実装されずにクローズされました(RFCが無駄だったというわけではなく、再度検討してよりアイデアがブラッシュアップされることになります)。 新しい use API このR

      最速攻略! Reactの `use` RFC
    • V8エンジンによる内部変換コードでasync/awaitの挙動を理解する

      はじめに JavaScript の「非同期処理」ってやっぱりかなり難しくないですか? 自分も色々試行錯誤しましたが、結局「完全に理解した🤓」→「やっぱり何も分からん😭」っていうループの中で泥臭く理解を深めていくしかないようです。 さて、非同期処理の制御をある程度予測できるようになるには、非同期 API を提供する環境のことやイベントループ、マイクロタスクなどの仕組みについて理解する必要があります。 そして環境に埋め込まれた JavaScript Engine のことも理解する必要があります。 今回の記事では、JavaScript Engine の1つである V8 が内部で変換するコードから async/await の挙動を理解するための解説を試みたいと思います。V8 エンジンからアプローチすることで async/await の分かりづらい挙動を掌握して非同期処理を打倒します。 今回の記

        V8エンジンによる内部変換コードでasync/awaitの挙動を理解する
      • Chromeに入るRecorder機能の利用と注意点 - 虎の穴開発室ブログ

        こんにちは。虎の穴ラボのH.Hです。 今回は先日発表されたChromeの開発中の新機能であるRecorder機能について使用方法や利用する際の注意点などをまとめました。 Recoder機能とは ブラウザのChrome97で追加される予定の機能で、ブラウザの画面上で操作した記録を取得してくれる機能になります。 この記事を書いている2021年11月17日では一般に提供されているChromeの最新版は96となり、開発中の「Chrome Dev」もしくは「Chrome Canary」でRecorder機能を使用することができます。 利用している時の様子はChromeの開発者向けのページに公開されています。 developer.chrome.com 主な機能は以下の通りです。 ・操作の記録及び再実行(リプレイ)できる ・再実行時にパフォーマンスの記録・確認できる ・記録した内容の編集ができる ・操作

          Chromeに入るRecorder機能の利用と注意点 - 虎の穴開発室ブログ
        • neue cc - async/awaitのキャンセル処理やタイムアウトを効率的に扱うためのパターン&プラクティス

          async/awaitの鬼門の一つとして、適切なキャンセル処理が挙げられます。別に基本的にはそんな難しいことではなく、CancellationTokenSourceを作る、CanellationTokenを渡す、OperationCanceledExceptionをハンドリングする。というだけの話です。けれど、Tokenに手動でコールバックをRegisterしたときとか、渡す口が空いてないものに無理やりなんとかするときとか、タイムアウトに使った場合の始末とか、ちょっと気の利いた処理をしたいような場面もあり、そうした時にどうすれば良いのか悩むこともあります。 こういうのはパターンと対応さえ覚えてしまえばいい話でもあるので、今回はAlterNatsの実装時に直面したパターンから、「外部キャンセル・タイムアウト・大元のDispose」が複合された状況での処理の記述方法と、適切な例外処理、そして最

          • 非同期処理を使いこなそう ! -第 2 回 非同期処理と同期処理の処理構造 - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS

            皆さんこんにちは。プロフェッショナルサービス本部のデジタルトランスフォーメーションチームでマネージャーをしています堀場です。 さて、いきなりですが、先日、ふと、頭に思い浮かんだ単語があります。それがこちら。 「機能」「情報」「連絡」「手順」「時間」・・・ 25 年以上前に覚えた単語がふと出てきたわけで・・・・この後、何が続くかご存知でしょうか ? 答えは、「論理」「暗号」です。 これは、モジュール強度 (または凝集度) の段階を表すもので「暗号」は凝集度が低く「機能」がもっとも高いと定義されています。なぜ、思い出したのかは謎です。ちなみに、10 年前の資料ですが IPA が提供している IT 人材育成用の汎用コンテンツ の 講義ノート に簡単な解説がありましたので興味がある方は読んでみてください。 凝集度が高いほど、堅牢性、信頼性、再利用性が高く、コードの読みやすさなどの点で好ましく、凝集

              非同期処理を使いこなそう ! -第 2 回 非同期処理と同期処理の処理構造 - builders.flash☆ - 変化を求めるデベロッパーを応援するウェブマガジン | AWS
            • JavaScriptの非同期処理をじっくり理解する (4) AbortSignal, Event, Async Context

              対象読者と目的 非同期処理の実装方法は知っているが、仕組みを詳しく知らないのでベストプラクティスがわからないときがある 実行順序の保証がよくわからないので自信をもってデプロイできない変更がある より詳しい仕組みを理解することでより計画的な実装をできるようになりたい という動機で書かれた記事です。同様の課題を抱える人を対象読者として想定しています。 目次 実行モデルとタスクキュー Promise async/await AbortSignal, Event, Async Context WHATWG Streams / Node.js Streams (執筆中) 未定 中止処理 並行処理ではしばしば実行中の処理を中止したい場合があります。 古典的なキャンセル処理 Webブラウザ/Node.jsともに、 setTimeout の中止が可能です。 const timeout = setTimeo

                JavaScriptの非同期処理をじっくり理解する (4) AbortSignal, Event, Async Context
              • 100秒で理解するPromise

                そもそも非同期処理とは? Promiseについて知るためには、まず非同期処理について知っておく必要があります。 以下の動画で、非同期処理について100秒で解説しているので、そもそも非同期処理をよく知らないなぁという人はぜひ確認してみてください! Promiseとは では、本題です。 Promiseとは、ES2015で導入された、非同期処理の状態や結果を表現するオブジェクトのことです。 PromiseはES2015で導入された非同期処理の状態や結果を表現するビルトインオブジェクトです。 非同期処理はPromiseのインスタンスを返し、そのPromiseインスタンスには状態変化をした際に呼び出されるコールバック関数を登録できます。 jsprimer - 非同期処理:Promise/Async Function 例えば、出前アプリでピザを注文することをイメージしてみましょう。 ピザを注文すると、

                  100秒で理解するPromise
                • Axios 使うのやめたらビルドサイズが 10 KB 減って、なんか知らんがパフォーマンスも良くなった話

                  この記事について Zenn では長らく通信処理に Axios を使っていました。 しかし、Fetch API が多くのモダンブラウザなどで普通に使えるようになった今、使う必要性があまり無くなったため、Axios を使っている処理を全て Fetch API に置き換えることになりました。 この記事では、その置き換え作業をどう進めていったのか、その結果どう良くなったのかを解説していこうと思います 🗽 解説より置き換えた結果を知りたいのよ私は!!! って方が居るかと思いますので、最初に置き換えたことで良くなった部分を紹介しようと思います。 まず一番良くなったところといえば、ずばりサイト全体のビルドサイズが 10 KB も減りました。( ちなみに、10 KB は圧縮時のサイズで、圧縮しない場合 100 KB になります 😇 ワーオ ) グローバルのビルドサイズが 103.35KB gzip 時

                    Axios 使うのやめたらビルドサイズが 10 KB 減って、なんか知らんがパフォーマンスも良くなった話
                  • GoとRust - 並行処理編

                    GoとRustの変更処理を比較することで両者を深く理解する試みです。 詳しい内容やスライドでは省いたところをブログに書きました https://zenn.dev/nasa/articles/compare_rust_go_concurrency

                      GoとRust - 並行処理編
                    • テストの可読性を支える技術

                      テストの可読性は、とても大事です。 そんな可読性をあげてくれるパッケージや考え方などを解説したので ぜひご覧いただければ幸いです。

                        テストの可読性を支える技術
                      • JestのTips集10選。サーバーサイドでNode.jsのJestを書いたことない人向け

                        対象 業務レベルでサーバーサイドでJestを書いたことはないけれど、新プロジェクトでは書くことになったみたいな方を想定して記述しています。 Jestについては中々ベストプラクティスが集まりにくいので、経験的にこう書くと「きれいに」・「早く」・「正確に」書けるよというTipsを集めてみました。もし、よろしければお読みください。 前提 TypeScript Node.js Jest DBアクセスありの状態を想定しています 1. it文内では、必ず1回は、expectをつかって検証をする JestのPRをレビューしてるとたまに見受けるのですが、expectを使ってないケースがあります。 // NG it('userを正常に、作成できること', async() => { await createUser({ name: 'Mike' }); }); // OK it('pdfが正常に削除できること

                          JestのTips集10選。サーバーサイドでNode.jsのJestを書いたことない人向け
                        • Remixの凄みを紹介したい

                          Cloudflare WorkersとKVで キャッシュを非同期に更新する | Cloudflare Meetup Nagoya

                            Remixの凄みを紹介したい
                          • 徹底解説! return promiseとreturn await promiseの違い

                            先日、こちらのツイートを見かけました。 それに対して筆者は以下のツイートをしたところ、いくつかの反応が寄せられました。 コード部分を再掲します。 async function foo1() { return await Promise.resolve(); } async function foo2() { return Promise.resolve(); } async function wait() { await null; } // pika // chu // と表示される foo1().then(() => console.log("pika")); wait().then(() => console.log("chu")); // chu // pika // と表示される foo2().then(() => console.log("pika")); wait().the

                              徹底解説! return promiseとreturn await promiseの違い
                            • async/await 比較(C#, JavaScript, Python) - Qiita

                              using System.Windows.Threading; Dispatcher.CurrentDispatcher.InvokeAsync(async () => { // いろいろな処理... // メッセージループを終了させる Dispatcher.CurrentDispatcher.BeginInvokeShutdown(DispatcherPriority.Normal); }); Dispatcher.Run(); WPF とか WinForms とかでは、フレームワークがすでにメッセージループを回しているので、自分で Dispatcher.Run() する必要はない。 JavaScript 自分で書く必要なし。 Python asyncio.run(最初に実行するasync関数)

                                async/await 比較(C#, JavaScript, Python) - Qiita
                              • Nodeのイベントループを理解するために遊んだ & Apolloのテストでawait wait(0)するとなぜデータがロードされるか - $shibayu36->blog;

                                Apolloを触っていて、テストをするために https://www.apollographql.com/docs/react/development-testing/testing/#testing-final-state を読んでいた。その文章の中で、 MockedProviderをrenderした時はloading状態になる データがロードされた最終状態にするにはwaaitみたいなnpm packageを使って、await wait(0)とかしてね It delays until the next "tick" of the event loop, and allows time for that Promise returned from MockedProvider to be fulfilled. と書かれていて、この文章の意味がわからなかったので、Nodeのイベントループを知

                                  Nodeのイベントループを理解するために遊んだ & Apolloのテストでawait wait(0)するとなぜデータがロードされるか - $shibayu36->blog;
                                • Java 5.0時代の非同期処理技術から学び直すScala/Java非同期処理

                                  【Oracle Cloud ウェビナー】Oracle Databaseはクラウドに移行するべきか否か 全10ケースをご紹介 (2023年5月24日)

                                    Java 5.0時代の非同期処理技術から学び直すScala/Java非同期処理
                                  • ソケットAPIが遅すぎる?新たなio_uringを試す!

                                    新しいAPIが作られるたびに、私たちは、古いAPIを置き換えるだけで高速化という夢をみます。何度夢破れても、高速なAPIが追加されたと聞けば、試さずにはいられませんよね! 今回は、Linuxカーネル5.1で追加されたio_uringを使って、Rustのasyncランタイムを実装し、gRPCサーバのベンチマークを実行してみました。 io_uringとはio_uringは、ファイルシステムとネットワークの非同期I/Oのために開発されました。同期よりも非同期のほうがおしゃれ、そういう雰囲気ありますよね!クラウドネイティブも、非同期にAPIを介して、なんかやってるやつですよね。 io_uringのインターフェイスは、高い性能を目指し、1)アプリケーションとカーネル間でのメモリコピーを避ける、2)複数のI/O要求を一度にカーネルに伝えることができる、という工夫がされています。 下図のように、アプリケ

                                      ソケットAPIが遅すぎる?新たなio_uringを試す!
                                    • Welcome to Comprehensive Rust 🦀 - Comprehensive Rust 🦀

                                      Welcome to Comprehensive Rust 🦀 This is a free Rust course developed by the Android team at Google. The course covers the full spectrum of Rust, from basic syntax to advanced topics like generics and error handling. The latest version of the course can be found at https://google.github.io/comprehensive-rust/. If you are reading somewhere else, please check there for updates. The course is also av

                                      • 非同期処理の歴史から見たコンピューティングの進化

                                        Visional 25新卒プロダクト職(エンジニア/デザイナー)向け 会社説明資料 / Visional Company Briefing for Newgrads 25

                                          非同期処理の歴史から見たコンピューティングの進化
                                        • Facebook、次期ビルドシステムの開発でRust言語の採用を明らかに

                                          Facebookは同社のソフトウェア開発において、同社が主導して開発しているオープンソースのビルドシステム「Buck」を利用しています。 Backは高速なビルドが可能な点を大きな特徴としており、もともとAndroidアプリケーション向けのビルドシステムとして登場しました。 その後対応する言語やプラットフォームが拡張され、現在では15種類以上のプログラミング言語と、さまざまなスマートデバイス、VRヘッドセット、そしてサーバアプリケーションにまで対応しています。 次期ビルドシステムの開発を決断 しかしこうした拡張を重ねる中でBuckの複雑さは増していき、新機能の追加がどんどん難しくなってきたと、Facebook Developersのブログに投稿された記事「The future of Buck」で吐露されています。 同社の開発チームは約4年前から、Buckのアーキテクチャの改善を段階的に行う取

                                            Facebook、次期ビルドシステムの開発でRust言語の採用を明らかに
                                          • async/awaitのaの違い~async wait説への反論 - Qiita

                                            はじめに ncaq氏の記事を読んで様々なことを学習できました。 asyncが「syncしない」なのにawaitが「waitする」なのは何故か。awaitがasync waitであるという説は正しいのか。async/awaitの語源について学習したことを記事にしました。 asyncとawaitのa-の違い asyncはsynchronize(同期)にa-(否定)が付いてasync(同期しない)となります。 awaitはwait(待つ)にa-(否定)が付いて「待たない」となりません。a-(方向)が付いてawait(待つ)となります。 a-(否定)とa-(方向)の違いです。 a-(否定)は「エイ」と発音する傾向 asynchronous エイスィンクロナス 非同期 Ajax エイジャックス(Asynchronous JavaScript And XML) asymmetry エイスィメトゥリィ

                                              async/awaitのaの違い~async wait説への反論 - Qiita
                                            • Pythonの並列処理・並行処理をしっかり調べてみた - Qiita

                                              「ビルトインモジュールが色々あってぜんぜん分からない。俺達は雰囲気で並列処理を使っている」という状態だったので、良くないと思ってPythonの並列処理と並行処理をしっかり調べてみました。 少し長めです。細かいところまで把握するためのもので、仕事などの都合でさくっと調べて使いたい方は別の記事をご確認ください。 使った環境 Python 3.6.1 :: Anaconda 4.4.0 (64-bit) Ubuntu Jupyter notebook(一部マジックコマンドなども利用しています) ※Windowsの場合、マルチプロセスなどで直接Jupyter上で動いてくれない(.pyファイルを経由すると動く)などのケースがあります。 参考 : Jupyter notebook never finishes processing using multiprocessing (Python 3) 並行

                                                Pythonの並列処理・並行処理をしっかり調べてみた - Qiita
                                              • top-level awaitがどのようにES Modulesに影響するのか完全に理解する - Qiita

                                                先日、TypeScript 3.8 RCが公開されました。TypeScript 3.8はクラスのprivateフィールド(#nameみたいなやつ)を始めとして、ECMAScriptの新機能のサポートがいくつか追加されています。この記事で取り扱うtop-level awaitもその一つです。 この記事ではtop-level awaitに焦点を当てて、その意味や使い方について余すところなく解説します。top-level awaitは一見単純な機能に見えますが、実はモジュール (ES Modules) と深い関係があり、そこがtop-level awaitの特に難しい点です。そこで、この記事ではECMAScriptのモジュールについても詳しく解説します。この記事を読んでtop-level awaitを完全に理解して備えましょう。 ※ この記事は3分の1くらい読むと「まとめ」があり、残りはおまけで

                                                  top-level awaitがどのようにES Modulesに影響するのか完全に理解する - Qiita
                                                • Chrome(Canary) の Native File System API で ローカルファイルの読み書きをする - mizchi's blog

                                                  ブラウザ上でローカルファイルの読み書きができる Native File System API が ChromeCanary で実装された。 前々から欲しかった機能なので、自分が作ってる markdown preview ツールに実装してみた。 Intent to ship https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/noan0cgEBGQ/t8DuK8_hDwAJ 仕様 http://wicg.github.io/native-file-system/ 動かすとこんな感じ https://mdbuf.netlify.com/ で Meta+O/Meta+S のキーバインドを振ってる。 有効化 https://www.google.com/intl/ja/chrome/canary/ をダウンロード chrom

                                                    Chrome(Canary) の Native File System API で ローカルファイルの読み書きをする - mizchi's blog
                                                  • 『マンガでわかるJavaScriptのPromise』がKindleで無料公開

                                                    『マンガでわかるJavaScriptのPromise』は、JavaScriptで通信などの処理を書く際に必須の仕様であるPromiseを、マンガで基礎から学ぶことができる。 『マンガでわかるJavaScriptのPromise』は、マンガ部分は76ページ、コードのまとめやコラム部分は51ページ、全体で167ページの構成で、コールバックを多用するJavaScriptの特徴や、Promise登場の背景、Promiseの仕組みや書き方、async/await、Promiseの静的メソッドまでを解説する。 目次は以下の通り。 第1話「JavaScriptのPromise」 第2話「同期処理と非同期処理」 第3話「コールバック関数」 第4話「コールバック関数のネスト」 第5話「Promiseの概念」 第6話「Promiseを使ったコード」 第7話「Promiseを使ったコード 2」 第8話「reso

                                                      『マンガでわかるJavaScriptのPromise』がKindleで無料公開
                                                    • 個人ブログの Next.js v13 移行でやったことまとめ

                                                      Next.js v13 への移行でやったことまとめ 準備 基礎となる記事に目を通した -> https://zenn.dev/link/comments/eefa4975aaedaf マイグレーションガイドを見て一つずつ対応しようかなと思ったけど、記事が長いのでnext devで動かして出てきたエラーを潰していく方法にした。とりあえずビルドできるようになったら、見落としやより良いやり方があるか確認するために読む。 ページコンポーネントに対して pages にあるファイルを app ディレクトリに移動させる 規約 通りに page と layout にコンポーネントを分割する getServerSideProps の処理をasync function getData() に変更する コンポーネントを async 関数にする props ではなくコンポーネントの中でgetData()の返り値を

                                                        個人ブログの Next.js v13 移行でやったことまとめ
                                                      • Timers Promises API が最高 - Panda Noir

                                                        名前から既にワクワクするこのAPIは、なんとPromiseを返すsetTimeout、setInterval関数を提供しています!最高です… というわけで今回はそれの紹介です。 基本的な使い方 await setTimeout(1000) ←これができるんです!素晴らしくないですか?? top-level await や for-awaitと組み合わせるとこんな感じで書けます import { setTimeout } from 'timers/promises'; console.log('start'); await setTimeout(1000); // これでいける!! console.log('1s passed'); import { setInterval } from 'timers/promises'; console.log('start'); for await (

                                                          Timers Promises API が最高 - Panda Noir
                                                        • Rustのasync/awaitをスムーズに使うためのテクニック - Qiita

                                                          RustのFutureとasync/awaitは、「時間のかかる処理」をするときに、「処理が終わるまでOSスレッドをブロックする(同期Rust)」のではなく、「当該処理を中断して、そのOSスレッドを別のタスクの処理に使う(非同期Rust)」ことで、スレッド数よりも多くの処理を同時に行う仕組みです。 同期Rustと非同期Rustには以下のようなアナロジーが成立します。 同期Rust 非同期Rust

                                                            Rustのasync/awaitをスムーズに使うためのテクニック - Qiita
                                                          • Rustのasync/awaitとスケジューラの話 / rust-async-await

                                                            その Swift コード、
こう書き換えてみないか / Polishing your Swift code with me!

                                                              Rustのasync/awaitとスケジューラの話 / rust-async-await
                                                            • RustのPinチョットワカル - OPTiM TECH BLOG

                                                              こんにちは。 先日、しばらく不動の一位を守ってきたRustをVSCodeで使う記事を抜き、 私の書いた非同期プログラミングの記事の記事が一番人気になったと思いきや数日でまた抜き返されて傷心中の、 R&Dチームの齋藤(@aznhe21)です。 さて、Rustの非同期プログラミングで時々Pinを使ったり、コンパイラにUnpinが不足していると怒られたりしませんか? そんな時によく分からずuseしたり別の手段を取ったりしていませんか? 今回、このままではマズいと思ってPinを勉強して完全に理解しましたので、その成果を皆さんと共有したいと思います。 更新履歴 03/10 指摘を受け下記2点を修正しました Unpinを実装しない型もムーブ出来ることへの言及 pin-projectクレートが安全であることによる書き換え 対象読者 この記事は下記全てに当てはまる人を想定して執筆しています。 Rustのト

                                                                RustのPinチョットワカル - OPTiM TECH BLOG
                                                              • フロントエンド API通信戦略

                                                                はじめに 今回はフロントエンド(Next.js×TypeScript)におけるAPI通信手法について、基本的なAPI通信の手法に加えて、「Repository層, Model層, Factory, API-Client」を用いた手法を具体的なコード例とともに解説します。 この記事の対象者 フロントエンジニア初級者から中級者 API結合におけるディレクトリ設計が明確に定まっていない人 API通信をする上での「Repository層」「Model層」「Factory」 「API-Client」それぞれの責務について理解したい人 全体の概要図 後の章でこの部分は詳しく解説します。 基本的なAPI通信手法 今回紹介するAPI通信手法 基本的なAPI通信手法 カスタムフックを使わない場合 カスタムフックを使わない基本的なAPI通信手法としては下記が例の1つとして挙げられるかと思います。 src/ap

                                                                  フロントエンド API通信戦略
                                                                • Python multiprocessing vs threading vs asyncio - JX通信社エンジニアブログ

                                                                  エンジニアの鈴木(泰)です。 今回は、multiprocessingとthreadingとasyncioの違いとはなんだろう?という問に挑戦してみたいと思います。 この問の答えをグーグル先生に聞いてみると、非常にたくさんの情報がヒットします。しかしながら、どの情報も断片的なものばかりで(本記事もそうなのかもしれません)、色々と本を読んだりネットを漁ったりして、情報を補完しなければなりませんでした。 本記事は、僕が調べた限りの情報を集約し、この問に対する結論を1つの記事にまとめたものとなっています。 前提 マルチプロセスとは マルチスレッドとは Pythonにおけるマルチスレッド 本題 マルチプロセス(multiprocessingライブラリ)を利用したほうが良い場合 cpu_sec.py cpu_multiprocessing.py cpu_threading.py cpu_asyncio

                                                                    Python multiprocessing vs threading vs asyncio - JX通信社エンジニアブログ
                                                                  • Display Locking によるレンダリングの最適化と Async DOM | blog.jxck.io

                                                                    Intro React や lit-html などにより、 DOM 操作の抽象化に加えて最適化が提供されることが一般的となった。 見方を変えれば、本来ブラウザがやるような最適化を、ライブラリが肩代わりしていると捉えることもできる。 これは、現在の標準 API には、規模が大きく処理が複雑なアプリケーションを開発する際に、足りてないものがあると考えることが可能だ。 課題の 1 つとして「DOM 操作が同期処理である」という点に着目し、 Async DOM という文脈でいくつかの提案が行われた。 今回は、その提案の 1 つであり Chrome で実装が進んでいる Display Locking について現状を解説する。 現状の DOM 操作の課題 まず、以下のような処理を考える。 body.appendChild($div) この処理が JS の途中で出現すれば、その瞬間 Window にある

                                                                      Display Locking によるレンダリングの最適化と Async DOM | blog.jxck.io
                                                                    • PHPで書いて覚える非同期処理 / php-async-programming

                                                                      これを読んでも、非同期処理はわかりませんが、暗いトンネルの先に光が見えます。

                                                                        PHPで書いて覚える非同期処理 / php-async-programming
                                                                      • Pythonの非同期処理の基礎とOpenAI APIへ並列リクエストする実践例

                                                                        こんにちは、commmuneでデータサイエンティストをしているひぐです。 人間が苦手なマルチタスクをLLMに任せたら、効果的に処理してくれるのではないか?というモチベーションのもと、Pythonの非同期処理を使って並列かつストリーミングでChatGPTの回答を出力するアプリを作りました🤖 例えば下記は、ある課題を入力すると、深さ・広さ・構造・時間軸という異なる観点で解像度を上げてくれるアプリケーションです。 アプリに関する登壇資料↓ このアプリ作成にあたってPythonの非同期処理を勉強したところ、最初は多くの専門用語(コルーチン、イベントループ...)や独自の記法により、全体像をつかむのに苦戦しました。一方で、学んでみると予想以上にシンプルな記法で実装できること、そして応用範囲が広くて便利だと理解しました。 この記事では、そんな少し取っつきにくけど便利なPythonの非同期処理にフォー

                                                                          Pythonの非同期処理の基礎とOpenAI APIへ並列リクエストする実践例
                                                                        • ⭐️🎀 JavaScript Visualized: Promises & Async/Await

                                                                          Ever had to deal with JS code that just... didn't run the way you expected it to? Maybe it seemed like functions got executed at random, unpredictable times, or the execution got delayed. There's a chance you were dealing with a cool new feature that ES6 introduced: Promises! My curiosity from many years ago has paid off and my sleepless nights have once again given me the time to make some animat

                                                                            ⭐️🎀 JavaScript Visualized: Promises & Async/Await
                                                                          • 非同期処理の道具箱 — HACK The Nikkei

                                                                            この記事はNikkei Advent Calendar 2022の 13 日目の記事です。 こんにちは、Web チームの井手です。最近 Web チームで働く魅力について語ったので是非とも読んで欲しいです。 今日は非同期ランタイムについて書きます。 私は非同期ランタイムやサーバー進化論が好きで、たまにブログを書いたり、前職でもアドベントカレンダーに書いたりしていました。 本稿では効率的な非同期処理を実現するライブラリが中で何をしているのかを、低レイヤーの非同期処理そのものを解説しながら見ていきたいと思います。説明の都合上 Rust を使うので、Rust 特有の話もありますが、低レベルな API があればどの言語でも当てはまる話だと思います。この辺りは Rust, Scala(JVM), Erlang, Go などはお互いがお互いのアイデアを参考にしていて切磋琢磨しつつも似た仕組みをそれぞれが

                                                                              非同期処理の道具箱 — HACK The Nikkei
                                                                            • その処理、 setInterval じゃなくてブラウザが暇な時にやっちゃえば?

                                                                              こんにちは。ぬこすけです。 setInterval などで定期的にブラウザで実行させている処理があったりするでしょう。 例えば、定期的にアクセストークンが有効かチェックし、無効だったら新しいトークンを取得するなど。 ブラウザはページのコンテンツを表示するために JavaScript の実行や UI の更新で忙しいです。 もし定期実行している処理がコンテンツ表示にかかわらない優先度の低い処理なのであれば、 できるだけブラウザの重要なタスクに影響を与えないようにしたい ものです。 この記事では できるだけブラウザの重要なタスクに影響を与えずに定期的に処理を実行させる方法を、アクセストークンのローテーションを例に紹介 します。 実装する機能 この記事で実装する機能は次の通りです。 React の hooks を使って実装します。 ブラウザのアイドル中(暇なとき)にアクセストークンを有効かチェック

                                                                                その処理、 setInterval じゃなくてブラウザが暇な時にやっちゃえば?
                                                                              • Next.jsで整える。デザインとロジックの分離

                                                                                先日開催されたジャムジャムJamstackで登壇させていただいた時の記事になります。 簡易構成のリポジトリを作成しましたので、参考になればと思います。 経緯 メディアサイトを作成することになった デザイナーコーダー ×1 フロントエンドエンジニア ×1(ワイ) Next.jsとmicroCMSでSSGしてvercelにデプロイ 私的、Jamstack王道構成ですね デザイナーコーダーさん「Jsわからんです」「抵抗感あります」 SSGをする為のpages/配下のファイルにはいろんな処理が記載されます。 getStaticPropsやgetStaticPathsとか ページネーションとかパンクズとか作る為の処理が色々記述されます。 この辺なんらかの方法で・いい感じに・分離できたら・いいですね^^ デザイナーコーダーが触るViewの部分 フロントエンドが触るロジックの部分 これを目指していきます

                                                                                  Next.jsで整える。デザインとロジックの分離
                                                                                • Rustで高速に大量のHTTPリクエストを投げる - Qiita

                                                                                  自己紹介 趣味でRustをやっている Twitter https://twitter.com/hatookov Github https://github.com/hatoo SoundCloud https://soundcloud.com/gfyxxqjngkze ネットワーク初心者なので誤りがあるかも知れません モチベーション oha HTTPロードジェネレータ Apache Bench(ab)みたいな tui-rsでリアルタイム表示 とにかくいっぱいリクエストを投げたい! ベンチマーク環境 WSL 2 Ryzen 3950x 今回はtokio https://github.com/hatoo/rust_http_benchmarks ベンチマーク雛形 ベンチマーク系のライブラリは複数回実行してしまい、時間がかかるのでやめた ざっくりと時間がわかればいいかな 簡単のためにサーバーはw

                                                                                    Rustで高速に大量のHTTPリクエストを投げる - Qiita