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

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

6
非同期コールバック関数のセットを待つにはどうすればよいですか?
私はJavaScriptでこのようなコードを持っています: forloop { //async call, returns an array to its callback } これらの非同期呼び出しがすべて完了したら、すべての配列の最小値を計算します。 それらのすべてをどのように待つことができますか? 私の現時点での唯一のアイデアは、doneと呼ばれるブール値の配列を用意し、i番目のコールバック関数でdone [i]をtrueに設定してから、whileと言うことです(すべてが完了しているわけではありません){} 編集:私は1つの可能性がありますが、醜い解決策は、各コールバックでdone配列を編集し、他のすべてのdoneが各コールバックから設定されている場合にメソッドを呼び出すことです。したがって、最後に完了するコールバックは継続するメソッドを呼び出します 前もって感謝します。

4
node.jsのconsole.logは非同期ですか?
あるconsole.log/debug/warn/errorNode.jsのasynchrounousに?内容が画面に印刷されるまでJavaScriptコードの実行が停止するのですか、それとも後の段階で印刷されるのですか? また、ノードがクラッシュした直後のステートメントでconsole.logが何も表示しない可能性があるかどうかを知りたいと思っています。

3
HttpClientでawaitを使用した非同期呼び出しが返されない
C#Win8 CPのxaml ベースのMetroアプリケーションの内部から電話をかけています。この呼び出しは単にWebサービスをヒットし、JSONデータを返します。 HttpMessageHandler handler = new HttpClientHandler(); HttpClient httpClient = new HttpClient(handler); httpClient.BaseAddress = new Uri("http://192.168.1.101/api/"); var result = await httpClient.GetStreamAsync("weeklyplan"); DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(WeeklyPlanData[])); return (WeeklyPlanData[])ser.ReadObject(result); これはでハングしますawaitが、http呼び出しは実際にはほとんどすぐに戻ります(フィドラーで確認)。これはawait無視されたかのようにハングアップするだけです。 質問する前に -はい-プライベートネットワーク機能がオンになっています。 これがハングする理由はありますか?

5
JavaScriptのpromiseとasync awaitの違いは何ですか?
ECMAScript 6とECMAScript 7の機能を、モバイルとWebの両方のアプリケーションで(Babelのおかげで)すでに使用しています。 最初のステップは明らかにECMAScript 6レベルへの移行でした。私は多くの非同期パターン、約束(本当に有望です)、ジェネレーター(なぜ*記号なのかわからない)などを学びました。これらのうち、約束は私の目的にかなりよく適合しました。そして、私は自分のアプリケーションでそれらをかなり使用しています。 これは、私が基本的なpromiseを実装した方法の例/疑似コードです。 var myPromise = new Promise( function (resolve,reject) { var x = MyDataStore(myObj); resolve(x); }); myPromise.then( function (x) { init(x); }); 時間が経つにつれ、ECMAScript 7の機能に出会いました。その1つはASYNC、AWAITキーワードと関数です。これらを組み合わせると、すばらしい不思議が起こります。私は私の約束のいくつかをに置き換え始めましたasync & await。彼らはプログラミングスタイルに大きな価値を加えているようです。 繰り返しますが、これは私の非同期のawait関数がどのように見えるかの疑似コードです- async function myAsyncFunction (myObj) { var x = new MyDataStore(myObj); return await x.init(); } var returnVal = await myAsyncFunction(obj); …

1
大きなデータでSqlCommand Asyncメソッドを使用した恐ろしいパフォーマンス
非同期呼び出しを使用すると、SQLパフォーマンスに大きな問題が発生します。私は問題を実証するために小さなケースを作成しました。 LANにあるSQL Server 2016(localDBではない)にデータベースを作成しました。 そのデータベースには、WorkingCopy2つの列を持つテーブルがあります。 Id (nvarchar(255, PK)) Value (nvarchar(max)) DDL CREATE TABLE [dbo].[Workingcopy] ( [Id] [nvarchar](255) NOT NULL, [Value] [nvarchar](max) NULL, CONSTRAINT [PK_Workingcopy] PRIMARY KEY CLUSTERED ([Id] ASC) WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] …

2
同期コードを非同期呼び出しにラップする
ASP.NETアプリケーションには、完了するまでにかなりの時間を消費するメソッドがあります。このメソッドの呼び出しは、ユーザーが提供するキャッシュの状態とパラメーターに応じて、1回のユーザー要求中に最大3回発生する可能性があります。各通話が完了するまでに約1〜2秒かかります。メソッド自体はサービスへの同期呼び出しであり、実装をオーバーライドする可能性はありません。 したがって、サービスへの同期呼び出しは次のようになります。 public OutputModel Calculate(InputModel input) { // do some stuff return Service.LongRunningCall(input); } また、メソッドの使用法は次のとおりです(注:メソッドの呼び出しは複数回発生する可能性があります)。 private void MakeRequest() { // a lot of other stuff: preparing requests, sending/processing other requests, etc. var myOutput = Calculate(myInput); // stuff again } 私はこの方法の同時作業を提供するために実装を私の側から変更しようとしました、そしてこれが私がこれまでに来たものです。 public async Task<OutputModel> CalculateAsync(InputModel input) { return await Task.Run(() => …

5
「この非同期メソッドには「await」演算子がなく、同期的に実行されます」という警告について心配する必要があります。
私はいくつかの非同期メソッドを公開するインターフェースを持っています。より具体的には、TaskまたはTask <T>のいずれかを返すメソッドが定義されています。async / awaitキーワードを使用しています。 私はこのインターフェースを実装している最中です。ただし、これらのメソッドの一部では、この実装には何も待つ必要がありません。そのため、コンパイラの警告「この非同期メソッドには「await」演算子がなく、同期的に実行されます...」という警告が表示されます。 エラーが発生する理由は理解していますが、このコンテキストでそれらについて何かを行う必要があるかどうか疑問に思っています。コンパイラの警告を無視するのは間違っていると感じます。 Task.Runを待つことで修正できることはわかっていますが、安価な操作を数回しか実行していないメソッドでは、それは間違っていると感じます。また、実行に不要なオーバーヘッドが追加されるように聞こえますが、asyncキーワードが存在するため、それがすでに存在するかどうかもわかりません。 警告を無視する必要がありますか、それとも私が見ないこれを回避する方法はありますか?

11
CSSを非同期にロードする方法
私のサイトでレンダリングがブロックされている2つのCSSファイルを削除しようとしています-それらはGooglePage SpeedInsightsに表示されます。私はさまざまな方法に従いましたが、どれも成功しませんでした。しかし、最近、Thinking Asyncに関する投稿を見つけました<script async src="https://third-party.com/resource.js"></script>。このコードを適用すると、問題は解決しました。 ただし、公開後、ページのスタイルが失われました。コードが機能するため、何が起こっているのかよくわかりませんが、アップロード後のスタイリングが機能しません。これであなたの助けをいただければ幸いです。ありがとう
94 html  css  asynchronous 

4
POSIX非同期I / O(AIO)のステータスは何ですか?
POSIX AIOファシリティをさまざまな詳細で説明するページがWebに散在しています。それらのどれもひどく最近です。彼らが何を説明しているのか、正確には明確ではありません。たとえば、Linuxカーネル非同期I / Oサポートの「公式」(?)Webサイトには、ソケットが機能しないと記載されていますが、Ubuntu 8.04.1ワークステーションの「aio.h」マニュアルページはすべて、任意のファイル記述子で機能します。次に、さらに少ないドキュメントでライブラリレイヤーで動作するように見える別のプロジェクトがあります。 知りたい: POSIX AIOの目的は何ですか?私が見つけることができる実装の最も明白な例は、それがソケットをサポートしていないと言っていることを考えると、全体が奇妙に思えます。非同期ディスクI / O専用ですか?もしそうなら、なぜハイパージェネラルAPIなのか?そうでない場合、なぜディスクI / Oが最初に攻撃されたのですか? 私が見ることができる完全な POSIX AIOプログラムの例はどこにありますか? 実際に誰かが実際に使用していますか? どのプラットフォームがPOSIX AIOをサポートしていますか?それらのどの部分をサポートしていますか?<aio.h>約束されているように見える暗黙の「任意のFDへのI / O」を本当にサポートしている人はいますか? 私が利用できる他の多重化メカニズムは完全に優れていますが、あちこちに浮かんでいるランダムな情報の断片が私を好奇心をそそられました。
93 linux  asynchronous  posix  bsd  aio 

10
イベントハンドラーの実行順序
次のように複数のイベントハンドラーを設定した場合: _webservice.RetrieveDataCompleted += ProcessData1; _webservice.RetrieveDataCompleted += ProcessData2; イベントRetrieveDataCompletedが発生したときにハンドラーはどの順序で実行されますか?それらは同じスレッドで実行され、登録された順序で順番に実行されますか?

11
Swift関数の非同期呼び出しからデータを返す
すべてのREST要求と応答を処理するユーティリティクラスをSwiftプロジェクトに作成しました。コードをテストできるように、簡単なREST APIを作成しました。NSArrayを返す必要があるクラスメソッドを作成しましたが、API呼び出しは非同期なので、非同期呼び出し内のメソッドから返す必要があります。問題は、非同期がvoidを返すことです。Nodeでこれを行っている場合、JSプロミスを使用しますが、Swiftで機能するソリューションを理解できません。 import Foundation class Bookshop { class func getGenres() -> NSArray { println("Hello inside getGenres") let urlPath = "http://creative.coventry.ac.uk/~bookshop/v1.1/index.php/genre/list" println(urlPath) let url: NSURL = NSURL(string: urlPath) let session = NSURLSession.sharedSession() var resultsArray:NSArray! let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in println("Task completed") if(error) { println(error.localizedDescription) } …
93 ios  rest  asynchronous  swift 

3
console.log()asyncまたはsync?
私は現在、TrevorBurnhamによるAsyncJavascriptを読んでいます。これはこれまでのところ素晴らしい本です。 彼は、このスニペットとconsole.logがSafariおよびChromeコンソールで「非同期」であると話します。残念ながら、これを複製することはできません。コードは次のとおりです。 var obj = {}; console.log(obj); obj.foo = 'bar'; // my outcome: Object{}; 'bar'; // The book outcome: {foo:bar}; これが非同期である場合、私は結果が本の結果であると予想します。console.log()は、すべてのコードが実行されるまでイベントキューに入れられ、その後実行され、barプロパティがあります。 同期して実行しているのに表示されます。 このコードを間違って実行していますか?console.logは実際に非同期ですか?

15
NSOperationQueueがすべてのタスクを完了したときに通知を受け取ります
NSOperationQueue持っていますがwaitUntilAllOperationsAreFinished、私は同期的にそれを待ちたくありません。キューが終了したときにUIの進行状況インジケーターを非表示にしたいだけです。 これを達成するための最良の方法は何ですか? NSOperationどのsが最後になるのかわからないため[queue operations]、通知を受信して​​もまだ空ではない(またはさらに悪いことに、再入力されている)ため、から通知を送信できません。


1
NodejsとSignalR:サーバー側のJavaScriptが必要な理由
Node.jsについて知っているので、私は常にそれのファンでした。しかし、今日、ASP.NETの代替の非同期でスケーラブルなリアルタイムモデルを提供するSignalRについて知りました。 私の知る限り、SignalRに対するNode.jsの主な利点は、クライアントサーバー間でコードを共有することです(別の利点は、クロスプラットフォームであることです)。SignalRの主な利点は、はるかに成熟したフレームワークであり、はるかに優れています。ツール(IDE)のサポート。だから私は疑問に思います:SignalRがここにあれば、WindowsでNode.jsはもう必要ですか?知らないNode.jsの利点はありますか?

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