5

同期呼び出しが非同期呼び出しと異なる理由について少し混乱しています。「即時」応答は決してないので、それでも数ナノまたはミリ秒かかりますか?

4

1 に答える 1

15

同期呼び出しは、ジョブを終了した後(またはタイムアウトに達した後)に呼び出し元に戻ります。非同期呼び出しは、他のアクティビティを開始した直後に戻ります。

これは、同期呼び出しの場合、呼び出されたアクティビティが発生している間、呼び出し元は待機し、完全にブロックされます。非同期呼び出しは、アクティビティが開始されただけですが、ほとんどすぐに呼び出し元に戻ります。その結果、非同期呼び出しの後、呼び出されたアクティビティは呼び出し元のアクティビティと並行して実行されます。

多くの場合、非同期で開始されたアクティビティが終了したことを「報告」するメカニズムがあります。または、呼び出し元のアクティビティが非同期タスクの完了の証拠をポーリングまたは検索する場合があります。

于 2010-03-17T09:18:55.823 に答える