並び順

ブックマーク数

期間指定

  • から
  • まで

41 - 80 件 / 276件

新着順 人気順

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

  • Async Ruby - Bruno Sutic

    Ruby has an Async implementation! It's available today, it's production-ready, and it's probably the most awesome thing that's happened to Ruby in the last decade, if not longer. Async Ruby adds new concurrency features to the language; you can think of it as "threads with none of the downsides". It's been in the making for a couple of years, and with Ruby 3.0, it's finally ready for prime time. I

    • async/await 時代の新しい HTTP サーバーフレームワーク tide を試す - Don't Repeat Yourself

      Rust Advent Calendar 2019 25日目の記事です。 tide は現在開発途中の、 Rust の async/await に対応した HTTP サーバーを構築するフレームワークです。not ready for production yet なので本番にこれを使用するのは難しいかもしれませんが、いろいろな例を見てみた感じとても使いやすそうで、注目に値するフレームワークの一つです。 記事を少し読んでみたのですが、どうやら 2018 年に Rust の Network Service Working Group が開発に着手したフレームワークのようですね。現在のステータスを追いかけていないので詳しくはわかりませんが、Rust チームの方々が何かしら関わっているフレームワークということで、少し安心感がもてるかなと私は思っています。async/await が今年無事安定化されたの

        async/await 時代の新しい HTTP サーバーフレームワーク tide を試す - Don't Repeat Yourself
      • Rustのasyncをgoroutineよりも高速に

        RustのgRPCの速度がGoよりも遅いため、デファクトの並列処理方法のasyncではなく、システムコールを直接使うという歪んだ愛の形で、Goよりも高速化を達成した前回。 私たちのRustへの愛は裏切られたのか?私たちがRustの愛を裏切ったのか?2つの思いの間を行き来しながら、asyncでも、goroutineよりgRPCを高速に実行できるか試してみましょう。 システムコールよりもランタイム前回は、ソケットをブロックしないように設定し、epollシステムコールでイベントを待つような、C言語のような実装でした。クラウドネイティブ時代に、Rustに加えて、そんな知識を習得している時間はないですよね!語り部を目指しているなどの特殊な理由で、epollについて知りたい場合は、前時代的な人に聞けば、Kqueueとepollの戦い、などの物語を朝まで聞くことができるでしょう。 非同期プログラミングの

          Rustのasyncをgoroutineよりも高速に
        • C# の async/await は実際にどうやって動いているか

          .NET ラボ 2023/05/27 での発表資料 ↓↓↓ スライドより詳細なブログです ↓↓↓ C# の async/await は実際にどうやって動いているか

            C# の async/await は実際にどうやって動いているか
          • (async) Rust doesn't have to be hard

            An article titled Rust Is Hard, Or: The Misery of Mainstream Programming came out today and it's getting a lot of attention. I have a feeling that it's viewed in a wrong context, so I'd like to comment on the issue raised there. A lot of the comments to the article are in a tone of "this is precisely the reason why I don't learn Rust, it's just too hard" or "just don't use async, it's too hard, ot

            • GitHub - sxyazi/yazi: 💥 Blazing fast terminal file manager written in Rust, based on async I/O.

              Yazi (means "duck") is a terminal file manager written in Rust, based on non-blocking async I/O. It aims to provide an efficient, user-friendly, and customizable file management experience. 💡 A new article explaining its internal workings: Why is Yazi Fast? 🚀 Full Asynchronous Support: All I/O operations are asynchronous, CPU tasks are spread across multiple threads, making the most of available

                GitHub - sxyazi/yazi: 💥 Blazing fast terminal file manager written in Rust, based on async I/O.
              • 『美術手帖』坂本龍一特集、6年後の編集後記──『async』と『12』から「坂本龍一」を考える

                『美術手帖』坂本龍一特集、6年後の編集後記──『async』と『12』から「坂本龍一」を考える 音楽家ではなく、美術家としての坂本龍一に迫った、2017年の『美術手帖』の坂本龍一特集。その企画に携わり、インタビュアーも務めた詩人で研究者の松井茂と、特集企画の担当編集者であった牧信太郎が、6年前に坂本龍一特集をつくりながら考えたこと、そして新しいアルバム『12』を聴きながら考えたことを語る。 構成=近江ひかり 美術家としての「坂本龍一」をどう描くか牧 雑誌『美術手帖』での「坂本龍一」特集は2017年5月号だったので、もう6年前ですね。アルバム『async』の発売と「坂本龍一 | 設置音楽」展(ワタリウム美術館)にあわせての特集企画だったのですが、美術メディアの切り口で、「坂本龍一」特集をどうつくるかを考えているなかで、松井さんに企画のご協力やインタビュアーをお願いしました。 松井 僕の世代(

                  『美術手帖』坂本龍一特集、6年後の編集後記──『async』と『12』から「坂本龍一」を考える
                • GitHub - vitalik/django-ninja: 💨 Fast, Async-ready, Openapi, type hints based framework for building APIs

                  You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                    GitHub - vitalik/django-ninja: 💨 Fast, Async-ready, Openapi, type hints based framework for building APIs
                  • async-singleton - 橋本商会

                    promiseのthrottleとかdebounceするやつなんだけど、そのへんの名前がnpmに空いていなかった

                      async-singleton - 橋本商会
                    • async/awaitとpromise使えばモナド糖衣構文っぽいの書けそうだよねって思って書いてみたけど、async () => {} でwrapしないといけないしまぁそんなにきれいに書けなかったって話 - ( ꒪⌓꒪) ゆるよろ日記

                      タイトルで全部言い切ってますが // Optional container like maybe monad class Option { constructor(value){ this.value = value } async promise() { return new Promise((resolve, reject) => { if (this.value) { resolve(this.value); } else { reject(undefined); } }); } } こんなMaybe とかOptionalっぽいやつを用意します。 promise() で Promiseを生成して返すようにします。もってる値に応じて resolve (JustやSome)したり reject (Nothing)したりします。 const o1 = new Option("foo");

                        async/awaitとpromise使えばモナド糖衣構文っぽいの書けそうだよねって思って書いてみたけど、async () => {} でwrapしないといけないしまぁそんなにきれいに書けなかったって話 - ( ꒪⌓꒪) ゆるよろ日記
                      • ついに正式対応されるRustのawait/asyncを1.39betaで確認してみた - Qiita

                        #![allow(non_snake_case)] use std::{thread, time}; async fn foo1() { for i in 0..10 { std::thread::sleep(time::Duration::from_millis(500)); println!("foo1:{} Thread[{:?}]", i, thread::current().id()); } } async fn foo2() { for i in 0..10 { std::thread::sleep(time::Duration::from_millis(500)); println!("foo2:{} Thread[{:?}]", i, thread::current().id()); } } #[runtime::main] async fn main() { let ha

                          ついに正式対応されるRustのawait/asyncを1.39betaで確認してみた - Qiita
                        • Node.js compatibility for Cloudflare Workers – starting with Async Context Tracking, EventEmitter, Buffer, assert, and util

                          Node.js compatibility for Cloudflare Workers – starting with Async Context Tracking, EventEmitter, Buffer, assert, and util03/23/2023 Over the coming months, Cloudflare Workers will start to roll out built-in compatibility with Node.js core APIs as part of an effort to support increased compatibility across JavaScript runtimes. We are happy to announce today that the first of these Node.js APIs –

                            Node.js compatibility for Cloudflare Workers – starting with Async Context Tracking, EventEmitter, Buffer, assert, and util
                          • Task/ValueTask を直接返せる場合でも原則非同期メソッド (async/await) にしたほうが良い

                            ユーザーコードでは Task/ValueTask (ジェネリック版含む) を直接返すことが可能の場合でも原則として非同期メソッドにして await することをおすすめします。 原則として、というのはこの記事で紹介するようなポイントを理解した上で最適化のために行うのは良いのですが、ユーザーコードでは落とし穴にハマるのを避けるためにほとんどのケースで素直に非同期メソッドにした方がよい、という話です。 Task/ValueTask を直接返す、返さないとは そもそも Task/ValueTask をそのまま返すコードというのはどういうものかというと、次のようなコードです。 public async Task Main() => await NantokaAsync(); public ValueTask NantokaAsync() { // 非同期を必要としない WriteAsync を呼び出

                              Task/ValueTask を直接返せる場合でも原則非同期メソッド (async/await) にしたほうが良い
                            • Studyplus iOSアプリにasync/awaitを導入してみた - Studyplus Engineering Blog

                              こんにちは、Studyplus事業部モバイルクライアントグループの上原です。 中途入社でiOSエンジニアとして入社して、StudyplusのiOSアプリの開発を主にしています。 また、最近はiOS以外にもFlutterを触り新機能を開発したりしています。 趣味の方では、Apex Legendsを数年やっているのですが、最近愛用していた武器が弱体化&武器生成必須になりモチベーションがどんどん低くなっています。新しい複数人でやれて人口の多いゲームの発売を切実に期待しています。 さて、今回は、Swift 5.5から導入されたasync/awaitをStudyplusのiOSアプリに一部導入したことについて書きます。 docs.swift.org async/await導入以前の非同期コード iOSでは、ネットワーク処理などの時間がかかる処理で、非同期的に動作させるためにクロージャーを呼び出す必要

                                Studyplus iOSアプリにasync/awaitを導入してみた - Studyplus Engineering Blog
                              • Async/await

                                “async/await” と呼ばれる、より快適に promise を利用する特別な構文があります。驚くほど簡単に理解し、使用することができます。 Async 関数async キーワードから始めましょう。次のように関数の前に置くことができます:

                                  Async/await
                                • #21 aodagさんをゲストに 「パーフェクトPython[改訂2版]」の出版とパッケージングやasyncの話など | terapyon channel podcast

                                  # Note aodagさんの紹介 @aodag https://twitter.com/aodag 2000年くらいからpythonを使い始める。大学院卒業後はPythonコミュニティに参加しつつ名古屋で働いていたがリーマンショックのころに上京 なんだかんだでビープラウドというPythonに強い会社に転職。今は株式会社オープンコレクター(https://www.open-c.jp/)に在籍 Note 最近は Go をメインにしごとしているが、Pythonもデモ用には使っている パーフェクトPython[改訂2版] https://amzn.to/2Yk533K が6月1日に発売 Python3.8対応で、実践的な話はWeb系だけど、外部ライブラリはデータ系を中心になっている ジェネレータやコルーチン、asyncや型ヒントについても説明している この本の面白さは、仕様を踏まえて、実践的な話

                                  • 2020-06-16 Async Function and Runtime Error Tracking (TypeScript Meetup #4)

                                    Async Function and Runtime Error Tracking 2020-06-16 TypeScript Meetup #4 bit.ly/3fahTar twitter.com/laco2net

                                      2020-06-16 Async Function and Runtime Error Tracking (TypeScript Meetup #4)
                                    • GitHub - sindresorhus/emittery: Simple and modern async event emitter

                                      You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

                                        GitHub - sindresorhus/emittery: Simple and modern async event emitter
                                      • Rails 7.1: Dockerfiles, BYO Authentication, More Async Queries, and more!

                                        Rails 7.1: Dockerfiles, BYO Authentication, More Async Queries, and more! Rails World just started and we are getting together with the community in person to celebrate of the 20th anniversary of Rails and the release of Rails 7.1. In this release there has been over five thousand commits made by over 800 contributors since Rails 7.0, so it is packed with new features and improvements. Dockerfiles

                                          Rails 7.1: Dockerfiles, BYO Authentication, More Async Queries, and more!
                                        • RFC: First class support for promises and async/await by acdlite · Pull Request #229 · reactjs/rfcs

                                          You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                            RFC: First class support for promises and async/await by acdlite · Pull Request #229 · reactjs/rfcs
                                          • How Async/Await Really Works in C# - .NET Blog

                                            Several weeks ago, the .NET Blog featured a post What is .NET, and why should you choose it?. It provided a high-level overview of the platform, summarizing various components and design decisions, and promising more in-depth posts on the covered areas. This post is the first such follow-up, deep-diving into the history leading to, the design decisions behind, and implementation details of async/a

                                              How Async/Await Really Works in C# - .NET Blog
                                            • その並列処理待った! 「Python 並列処理」でググったあなたに捧ぐasync, threading, multiprocessingのざっくりとした説明 - Qiita

                                              ※ 本記事ではざっくりとした理解を目的とするため、スレッドとプロセスとコア、非同期処理と並列処理と並行処理の違いについて詳細には取り扱いません。気になる方は下記の記事などをご参考ください。 async スレッド数もコア数も1 だから並列処理じゃなくない? というツッコミは正解です。正確には並列処理ではなくて「非同期処理」といいます。フロントエンドのJavascriptから始めた方にはなじみが深いかもしれませんが、「非同期処理」と「並列処理」は全く違う概念なのでご注意ください。 処理の概要としては、最初に複数のリクエストを投げておいて、レスポンスが全部帰ってくるまで待ち、応答が揃ってから処理を再開します。 これにより、応答に 3~7秒(平均5秒)かかるスクレイピングを100回行う場合、同期処理なら500秒程度かかるところ、asyncを使った非同期処理なら7,8秒程度で実行できます。 (外部と

                                                その並列処理待った! 「Python 並列処理」でググったあなたに捧ぐasync, threading, multiprocessingのざっくりとした説明 - Qiita
                                              • Async UI: a Rust UI Library where Everything is a Future | Wisha Wanichwecharungruang

                                                Async UI: a Rust UI Library where Everything is a Future Lifetime-Friendly, Component-Based, Retained-Mode UI Powered by Async Rust This blog post is intended for readers with some experiences in async Rust. It assumes you know what a Future is! What is Async UI? Async UI is a proof-of-concept Rust UI library with backends for the web (HTML/JS) and GTK 4. Screenshots Todo List Demo (interactive ve

                                                • async/awaitで躓いて学んだ、「オレは雰囲気でRustをしている!」からの脱し方。 - CADDi Tech Blog

                                                  こんにちは。テクノロジー本部バックエンド開発グループの小倉です。 この記事は キャディ Advent Calendar 2020 の9日目です。前日は山田さんの protobuf v3 の optional について でした。 Rustはイカしたエコシステムが充実していて、型が厳しい言語の割にはコンパイラやリンターに従うだけで動くコードが書けたりします。その結果「オレは雰囲気でRustをしている!」という気持ちになったりするんですよね〜。 本記事では、巷にあふれる入門記事を読んで実務に挑み、その結果でてきたよくわからない点を調べた結果得た知識を紹介します。 巷にあふれているRustのasync/awaitの記事。 これらを読みました Rustの非同期プログラミングをマスターする 2019 年の非同期 Rust の動向調査 Rustのasync/awaitとスケジューラの話 / rust-a

                                                    async/awaitで躓いて学んだ、「オレは雰囲気でRustをしている!」からの脱し方。 - CADDi Tech Blog
                                                  • neue cc - async decoratorパターンによるUnityWebRequestの拡張とUniTaskによる応用的設計例

                                                    UniTask v2も2.0.30まで到達し、いい加減そろそろ安定したと言える頃合いです(ほんと!)。GitHub Star数も1000を超えて、準スタンダードとして安心して使ってもらえるレベルまで到達したと思うので、基盤部分から入れ込んで設計するとこんなことができますよ、という一例を出してみます。 UnityWebRequestはかなりプリミティブな代物で、そのまま使うよりかはある程度はアプリケーションに沿ったラッパーを被せることがほとんどなのではないかと思います。しかし、ライブラリ単体でアプリケーションの要求を全て満たそうとするとヘヴィになりすぎたり、というかそもそもアプリケーション固有の要求には絶対に答えられない。というわけで、理想的なラッパーというのは、それ自身が極力軽量で、拡張性を持たせたプラガブルな仕組みが用意されているものということになります。プラガブルな拡張性がないと、例え

                                                    • How we designed Dropbox’s ATF - an async task framework

                                                      I joined Dropbox not long after graduating with a Master’s degree in computer science. Aside from an internship, this was my first big-league engineering job. My team had already begun designing a critical internal service that most of our software would use: It would handle asynchronous computing requests behind the scenes, powering everything from dragging a file into a Dropbox folder to schedul

                                                        How we designed Dropbox’s ATF - an async task framework
                                                      • Rails 7.1 Beta 1: Dockerfiles, BYO Authentication, More Async Queries, and more!

                                                        Rails 7.1 Beta 1: Dockerfiles, BYO Authentication, More Async Queries, and more! Rails World is fast approaching and we’re gearing up to celebrate the 20th anniversary of Rails in style with the first beta release of Rails 7.1! There has been over five thousand commits made by over 800 contributors since Rails 7.0, so this release is packed with new features and improvements. Please help us test a

                                                          Rails 7.1 Beta 1: Dockerfiles, BYO Authentication, More Async Queries, and more!
                                                        • JavaScript ES6のAsync/Awaitで非同期処理とエラー処理、並列処理を解説!初心者向け完全ガイド - deve.K's Programming Primer - プログラミング初心者のための入門ブログ

                                                          この記事では、ES6のasync/await、およびPromises.all()を使用して非同期プログラミングを容易にする方法を学習します。 前回でのPromiseチュートリアルは以下で学ぶことができますので参照ください。 dev-k.hatenablog.com async/awaitとは asyncキーワード awaitキーワード Promise並列処理 async/awaitでのループ エラー処理 async/awaitでFetchを使用する方法 使用に関する注意点(ルール) 最後に async/awaitとは async/awaitは技術的に言えば、Promisesのシンタックスシュガー(Syntax sugar)となります。 シンタックスシュガーとは簡単に言ってしまえば、構文を省略しプログラムを書いていく事をシンタックスシュガーと言います。 ですが、これはプログラミング言語によっ

                                                            JavaScript ES6のAsync/Awaitで非同期処理とエラー処理、並列処理を解説!初心者向け完全ガイド - deve.K's Programming Primer - プログラミング初心者のための入門ブログ
                                                          • GitHub - davnicwil/react-frontload: Async data loading for React components, on client & server

                                                            You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                              GitHub - davnicwil/react-frontload: Async data loading for React components, on client & server
                                                            • Rustのasync/awaitを使ったecho serverの実装 - 睡分不足

                                                              rust 1.39でasync/await構文が安定化されます. 巷で話題の機能ですが,asycn/await何も分からん...ということで話題に乗り遅れないためにasync/awaitを利用してecho serverを実装してみます. OSはLinuxが対象です.ソースはここにあります. echo server async/awaitを使用する前に,まずは通常のecho serverを作成してみます(ソース). あえてstd::netを使わないで実装しています. 主処理は以下のようになっています. fn handle_client(stream: TcpStream) -> io::Result<()> { let mut buf = [0u8; 1024]; loop { let n = syscall!(read( stream.0, buf.as_mut_ptr() as *mut

                                                                Rustのasync/awaitを使ったecho serverの実装 - 睡分不足
                                                              • async/await を完全に理解する

                                                                この記事ではasync/awaitについて完全に理解する[1]ことを目標に説明します。 完全に理解するために一部厳密には正確ではない表現をしますがご了承ください。 (明らかに事実と異なる内容が含まれている場合はご指摘いただけると助かります) ちなみにC#の文法説明になりますが、他の言語でも基本的な考え方は同じはずです。例えばJavaScriptの場合はTask型をPromise型に置き換えていい感じに読んでください。 非同期処理とTask型 async/awaitを完全に理解するためには、非同期処理の扱い方について完全に理解する必要があります。 そもそも非同期処理って何?という方はググってください。同期処理と非同期処理の違いについては完全に理解した前提で説明します。 非同期処理は複数のタスクを同時並行に処理するためのものですが、実際にコードを書いていると非同期で処理しているタスクが終わるま

                                                                  async/await を完全に理解する
                                                                • Announcing `async fn` and return-position `impl Trait` in traits | Rust Blog

                                                                  Announcing `async fn` and return-position `impl Trait` in traits The Rust Async Working Group is excited to announce major progress towards our goal of enabling the use of async fn in traits. Rust 1.75, which hits stable next week, will include support for both -> impl Trait notation and async fn in traits. This is a big milestone, and we know many users will be itching to try these out in their o

                                                                    Announcing `async fn` and return-position `impl Trait` in traits | Rust Blog
                                                                  • &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;

                                                                    りぼん「まんがスクール」の評内の文章「(入賞者の長所を褒めた後に)…もしこうした才能が天性のものだとしたら、与えられた時と同じように、手放す瞬間も選ぶことが出来ません。それまでに手に入れるべきは、オリジナリティです。」になんか色々ぐっとくるものがあった。— おぶち (@pandaobuchi) November 6, 2019 &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;

                                                                      &lt;script async src="https://platform.twitter.com/widgets.js" charset="utf-8"&gt;&lt;/script&gt;
                                                                    • 【JavaScript】 async/await で非同期処理をわかりやすく記述する – 株式会社ライトコード

                                                                      async/await という仕組み 本記事では、 JavaScript の非同期処理を扱うための async/await という仕組みについて取り上げます。 async/await は、 Promise を利用した非同期処理をよりわかりやすく記述できます。 本題へ進む前に Promie の復習をしておきましょう! Promise の復習async/await は、 Promise の仕組みを利用しているため、Promise への理解が大切だからです。 非同期関数を作成するときに Promise が利用できます。

                                                                        【JavaScript】 async/await で非同期処理をわかりやすく記述する – 株式会社ライトコード
                                                                      • SpringBootでAsyncを使う時に知っておきたいExecutorのこと - 日々常々

                                                                        SpringFramework 6.0.11 SpringBoot 3.1.2 @Async と @EnableAsync の使い方 SpringFrameworkで @Async を使うとかんたんにメソッドを非同期で実行できます。 @Component class AsyncComponent { @Async void method() { // 時間のかかる処理 } } 使う側は単にメソッドを呼び出すだけです。戻り値を処理したいなら Future で受ければいいけど、投げっばでいいなら void で良い。投げっばでいい場合の方が多いはず。 @Async を使うためにはアノテーションを処理する何かしらが必要で、この一式を用意するように指示するのが @EnableAsync です。 以下のようなクラスをSpringがわかるところに置いてあげます。 @EnableAsync @Config

                                                                          SpringBootでAsyncを使う時に知っておきたいExecutorのこと - 日々常々
                                                                        • Ras Async Adapter Ethernet Driver For Mac - gigacorporate

                                                                          Visiteurs depuis le 26/01/2019 : 1665 Connectés : 1 Record de connectés : 21 Ras Async Adapter Windows 10Ras Async Adapter Ethernet Driver For Mac FreeRAS Async Adapter I stupidly pressed the “on” switch for 10 seconds while the laptop Dell Model XPS 14 (L401X) (Windows 7 64 bit) was booting up. Afterwards, my wi-fi and USB Verizon Novatel 760 Mobile Modem weren’t working.Microsoft ras async adapt

                                                                            Ras Async Adapter Ethernet Driver For Mac - gigacorporate
                                                                          • Promiseとasync-awaitの例外処理を完全に理解しよう - Qiita

                                                                            はじめに JavaScriptは非同期処理との闘いです。 人類が非同期処理を倒すために、Promiseやasync-awaitという最終兵器を生み出して、劇的にクリーンで平和な世界が生まれたという話は以前しました => (もしかして: JavaScriptは如何にしてAsync/Awaitを獲得したのか Qiita版) しかあぁし!!! 甘い、甘いのですよ!!!!! 人類を苦しめ続ける非同期処理が、そんな簡単に完全に倒せるわけがないのですよ。 非同期処理の本当にヤバイ深淵、それが「例外処理」です。 みなさんはPromiseで開発していて、 「なんか途中までうまく行ってたんだけど気づいたら例外が外側に飛ばなくなった…なんでだ…」 「助けて!Promiseにcatch書いてるのに何故か例外がcatch出来ないの!!!」 という経験はないでしょうか。私は何度もあります。 この記事では、具体的に何

                                                                              Promiseとasync-awaitの例外処理を完全に理解しよう - Qiita
                                                                            • FastAPIの"def"と"async def"って結局「どっちを使えば良いんじゃろう?」 - Qiita

                                                                              はじめに FastAPIを始めてみたところ、async/await構文があり、Pythonにも「async/await構文があるんだなー」と初めてその存在を知った。 しかし、FastAPIのサンプルコードやネットで公開されているコードを見ると、async defとdefをどのように使い分けているのかよくわからず、結局、「どっちを使えば良いんじゃろう?」という気持ちになったので、async/await、同期 / 非同期(並行処理)を調べつつ、結論を導いてみることにした。 いきなり結論 Path operation 関数の場合、async defではなくdefで、基本、実装する。 defだけでも、外部スレッドプールで非同期処理されるようにフレームワークとして実装されているとのこと async defを使った方が良いのは以下の2ケース async/awaitをサポートしているライブラリを利用した

                                                                                FastAPIの"def"と"async def"って結局「どっちを使えば良いんじゃろう?」 - Qiita
                                                                              • FastAPIでPath Operationに def と async def どちらを使うべきか - Carpe Diem

                                                                                背景 FastAPIでは以下のようにデコレータ関数を使うことでHTTPサーバのpathを設定することができ、これをPath Operationと呼びます。 from fastapi import FastAPI app = FastAPI() @app.get("/") async def read_root(): return {"Hello": "World"} @app.get("/items/{item_id}") async def read_item(item_id: int, q: str = None): return {"item_id": item_id, "q": q} このPath Operationでdefを使うべきかasync defを使うべきかの方針を説明します。 環境 Python 3.9.11 FastAPI 0.74.1 方針 結論から言うと以下の方針で

                                                                                  FastAPIでPath Operationに def と async def どちらを使うべきか - Carpe Diem
                                                                                • なぜasyncの中でformat!を使うとエラーが出るのか - Qiita

                                                                                  2019年11月にリリースされたRust 1.39では,非同期プログラミングを支援するためにasync/awaitが言語機能として導入されました. 機能自体の解説は「Rustの非同期プログラミングをマスターする」などを読んでいただくと良いでしょう. 本稿ではasync/awaitの基本的な知識は前提としたうえでformat!との組み合わせにより生じる不可解なエラーについて解説します. エラー例 次のコードはStringを受け取るasync fnにformat!で作成した文字列を渡し,awaitしています. async fn take_string(_: String) {} fn main() { tokio::spawn(async { take_string(format!("")).await; }); } $ cargo c Checking crate_name v0.1.0 (

                                                                                    なぜasyncの中でformat!を使うとエラーが出るのか - Qiita