タグ付けされた質問 「asynchronous」

非同期プログラミングは、通常、ソフトウェアのパフォーマンス、応答性、および/または構成可能性を向上させるために、待ち時間が長いか優先度の低い操作を延期するための戦略です。このような戦略は、通常、イベント駆動型プログラミングとコールバックを組み合わせて使用​​し、オプションでコルーチンやスレッドを介して同時実行性を利用します。

8
非同期のJavaScript関数を同期的に呼び出す
まず、これは、何千行もの長い同期コードベースに非同期呼び出しを改造するために意図的に間違った方法で行う非常に特殊なケースであり、現在のところ、「行う」変更を行う能力がありませんそれは正しい。」それは私の存在のすべての繊維を傷つけますが、現実と理想はしばしば一致しません。これは最悪だ。 さて、それが邪魔にならないように、私ができるようにするにはどうすればよいですか? function doSomething() { var data; function callBack(d) { data = d; } myAsynchronousCall(param1, callBack); // block here and return data when the callback is finished return data; } 例(またはその欠如)はすべてライブラリおよび/またはコンパイラを使用していますが、どちらもこのソリューションでは実行できません。UIをフリーズせずにブロックする方法の具体的な例が必要です(たとえば、コールバックが呼び出されるまでdoSomething関数を終了しないでください)。JSでそんなことが可能なら。

16
.NET Reactive Frameworkの優れた紹介[終了]
閉まっている。この質問はスタックオーバーフローのガイドラインを満たしていません。現在、回答を受け付けていません。 この質問を改善してみませんか?Stack Overflowのトピックとなるように質問を更新します。 6年前休業。 この質問を改善する Microsoftのドキュメントの他に、Microsoft Reactive(Rx)フレームワークの入門とチュートリアルはありますか? また、Reactiveが従来の非同期コーディング技術を使用して解決するのが難しいプログラミングの問題を容易にする良い例(コード付き)は何ですか?

8
ASP.NET MVCで非同期コントローラーを使用する必要があるのはいつですか?
ASP.NET MVCで非同期アクションを使用するいくつかの懸念があります。アプリのパフォーマンスが向上するのはいつですか? ASP.NET MVCのどこでも非同期アクションを使用するのは良いことですか? 待機可能なメソッドについて:(EF / NHibernate /その他のORMを介して)データベースにクエリを実行する場合は、async / awaitキーワードを使用する必要がありますか? 何回で非同期データベースを照会するためのawaitキーワードを使用することができる1つのアクションメソッド?

18
PHPで非同期HTTPリクエストを行う方法
PHPで非同期HTTP呼び出しを行う方法はありますか?応答については気にせず、のようにしたいだけですfile_get_contents()が、残りのコードを実行する前に要求が完了するのを待ちません。これは、アプリケーションで一種の「イベント」を発生させる場合や、長いプロセスをトリガーする場合に非常に役立ちます。 何か案は?
209 php  http  asynchronous 


13
PHPの非同期シェルexec
シェルスクリプトを呼び出す必要があるが、出力はまったく気にしないPHPスクリプトを持っています。シェルスクリプトは多数のSOAP呼び出しを実行し、完了するのに時間がかかるため、応答を待機している間、PHPリクエストの速度を低下させたくありません。実際、PHPリクエストは、シェルプロセスを終了せずに終了できるはずです。 私は様々に見てきましたexec()、shell_exec()、pcntl_fork()、などの機能、それらのどれもまさに私が望むものを提供するように見えるん。(または、もしそうなら、それは私には明確ではありません。)何か提案はありますか?
199 php  asynchronous  shell 

6
<script async =“ async” />をサポートするブラウザーはどれですか?
2009年12月1日、Googleは非同期Google Analyticsトラッキングのサポートを発表しました。 非同期追跡は、&lt;script&gt;タグのasyncディレクティブを使用して実現されます。 どのブラウザーがasyncディレクティブ(&lt;script async="async" /&gt;)をサポートし、どのバージョン以降ですか?

4
C#5非同期CTP:EndAwait呼び出しの前に、生成されたコードで内部「状態」が0に設定されるのはなぜですか?
昨日、新しいC#の「非同期」機能について、特に生成されたコードがどのように見えるか、およびthe GetAwaiter()/ BeginAwait()/ EndAwait()呼び出しについて詳しく説明しました。 C#コンパイラーによって生成された状態マシンを詳細に調べたところ、理解できない2つの側面がありました。 生成されたクラスにDispose()メソッドと$__disposing変数が含まれているのに、それらが使用されていないように見える(クラスがを実装していないIDisposable)理由。 通常、0が「これが初期エントリポイントであること」を意味するように見えるときに、内部state変数が0に設定される理由EndAwait() 最初の点は、非同期メソッド内でもっと興味深いことを実行することで解決できると思いますが、誰か他の情報があれば、聞いて喜んでいます。ただし、この質問は2番目の点についての詳細です。 非常にシンプルなサンプルコードを次に示します。 using System.Threading.Tasks; class Test { static async Task&lt;int&gt; Sum(Task&lt;int&gt; t1, Task&lt;int&gt; t2) { return await t1 + await t2; } } ...そしてこれがMoveNext()、ステートマシンを実装するメソッドのために生成されるコードです。これはReflectorから直接コピーされます-私は言葉にできない変数名を修正していません: public void MoveNext() { try { this.$__doFinallyBodies = true; switch (this.&lt;&gt;1__state) { case 1: break; case 2: goto Label_00DA; …
195 c#  asynchronous  c#-5.0 

2
CompletableFuture、Future、RxJavaのObservableの違い
私はとの違いを知りたいのですが CompletableFuture、FutureとObservable RxJava。 私が知っていることはすべて非同期ですが Future.get() スレッドをブロックします CompletableFuture コールバックメソッドを提供します RxJava Observable--- CompletableFuture他の利点と同様(不明) たとえば、クライアントが複数のサービス呼び出しを行う必要があり、Futures(Java)を使用する場合、Future.get()順次実行されます... RxJavaでそれがどのように優れているかを知りたいです。 そして、ドキュメントhttp://reactivex.io/intro.htmlは言う Futuresを使用して条件付き非同期実行フローを最適に構成することは困難です(または各リクエストのレイテンシは実行時に変化するため不可能です)。もちろん、これは可能ですが、すぐに複雑になり(エラーが発生しやすくなる)、Future.get()で途中でブロックされ、非同期実行の利点がなくなります。 RxJavaこの問題をどのように解決するかを知りたいと本当に思っています。ドキュメントから理解するのは難しいと思いました。

10
同期プログラミングと非同期プログラミングの違いは何ですか(node.js内)
nodebeginnerを読んでい て、次の2つのコードに遭遇しました。 最初の1つ: var result = database.query("SELECT * FROM hugetable"); console.log("Hello World"); 2つ目: database.query("SELECT * FROM hugetable", function(rows) { var result = rows; }); console.log("Hello World"); 私は彼らがしなければならないことを取得し、彼らはデータベースにクエリを実行してクエリへの回答を取得します。そしてconsole.log('Hello world')。 最初のものはおそらく同期コードです。2つ目は非同期コードです。 2つの部分の違いは私には非常にあいまいです。出力はどうなりますか? 非同期プログラミングでグーグルしても助けにはなりませんでした。

3
Moqを使用して単体テストの非同期メソッドをモックする
Web API呼び出しを行うサービスのメソッドをテストしています。HttpClientローカルでWebサービス(ソリューションの別のプロジェクトにある)も実行している場合は、単体テストで通常の方法を使用するとうまくいきます。 ただし、変更をチェックインすると、ビルドサーバーはWebサービスにアクセスできないため、テストは失敗します。 私は、ユニットテスト用にIHttpClientインターフェイスを作成し、アプリケーションで使用するバージョンを実装することで、これを回避する方法を考案しました。単体テストでは、モック化された非同期postメソッドを使用して、モック化されたバージョンを完成させます。ここで問題が発生しました。HttpStatusResultこの特定のテストに対してOKを返したいのですが。別の同様のテストでは、悪い結果が返されます。 テストは実行されますが、完了することはありません。待ちに待っています。私は非同期プログラミング、デリゲート、Moq自体に不慣れで、しばらくの間SOとグーグルを検索してきましたが、まだこの問題を乗り越えられないようです。 これが私がテストしようとしている方法です: public async Task&lt;bool&gt; QueueNotificationAsync(IHttpClient client, Email email) { // do stuff try { // The test hangs here, never returning HttpResponseMessage response = await client.PostAsync(uri, content); // more logic here } // more stuff } これが私の単体テスト方法です: [TestMethod] public async Task QueueNotificationAsync_Completes_With_ValidEmail() { Email email …

5
LINQ SELECTで非同期待機
既存のプログラムを変更する必要があり、次のコードが含まれています。 var inputs = events.Select(async ev =&gt; await ProcessEventAsync(ev)) .Select(t =&gt; t.Result) .Where(i =&gt; i != null) .ToList(); しかし、これは最初のすべての使用の、私にとって非常に奇妙なようだasyncし、await選択します。スティーブン・クリアリーのこの回答によると、私はそれらを落とすことができるはずです。 次に、Select結果を選択する2番目。これは、タスクがまったく非同期ではなく、同期的に実行される(何もしないために多大な労力を要する)ことを意味しませんか?それとも、タスクは非同期的に実行され、完了したら残りのクエリが実行されますか? 私はに応じて次のように上記のコードを記述する必要がありステファン・クリアリーによって別の答え: var tasks = await Task.WhenAll(events.Select(ev =&gt; ProcessEventAsync(ev))); var inputs = tasks.Where(result =&gt; result != null).ToList(); そしてそれはこのように完全に同じですか? var inputs = (await Task.WhenAll(events.Select(ev =&gt; ProcessEventAsync(ev)))) .Where(result =&gt; result != null).ToList(); このプロジェクトに取り組んでいる間、最初のコードサンプルを変更したいのですが、(適切に機能している)非同期コードの変更にはあまり熱心ではありません。多分私は何も心配していません、そして3つのコードサンプルはすべてまったく同じことをしていますか? …
180 c#  linq  asynchronous 

12
Pythonでの非同期メソッド呼び出し?
Pythonに非同期メソッド呼び出し用のライブラリがあるかどうか疑問に思っていました。あなたが次のようなことをすることができればそれは素晴らしいでしょう @async def longComputation(): &lt;code&gt; token = longComputation() token.registerCallback(callback_function) # alternative, polling while not token.finished(): doSomethingElse() if token.finished(): result = token.result() または、非同期のルーチンを非同期に呼び出す def longComputation() &lt;code&gt; token = asynccall(longComputation()) 言語コアのネイティブとして、より洗練された戦略を持つことは素晴らしいことです。これは考慮されましたか?


4
C#でValueTask <T>よりもTask <T>を使用するのはなぜですか?
OverаэтотвопросестьответынаStack Overflowнарусском:КогдаследуетиспользоватьValueTask &lt;T&gt;? C#7.0以降、非同期メソッドはValueTask &lt;T&gt;を返すことができます。説明には、キャッシュされた結果がある場合、または同期コードを介して非同期をシミュレートする場合に使用する必要があると記載されています。しかし、私はまだValueTaskを常に使用することの何が問題なのか、または実際にasync / awaitが最初から値型で構築されなかった理由を理解していません。ValueTaskはいつ仕事に失敗しますか?
168 c#  asynchronous 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.