この記事は機械翻訳されたものです。

編集長より

非同期についての考察 (英語)

マイケル ・ Desmond

 

Michael Desmond今月 MSDN Magazine 、C#、Visual Basic、マイクロソフトの次のバージョンになる、強力な新しい非同期プログラミング機能について説明します。NET フレームワークです。 今日可能な Visual Studio の非同期の CTP を介して、新機能、マルチコア システムの時代においては最大の新たな頭痛のいずれかを解決およびクラウド ・ コンピューティングに役立つ: ようなリモート サーバーまたは、計算を完了するのには、別のスレッドでを返すデータの処理を待機しているスレッドがブロックされている場合に発生罰則。

私は、Mads Torgersen、今月の非同期プログラミング機能およびプリンシパルのプログラム マネージャーをマイクロソフトのチームは、C# と Visual Basic の言語のいずれかの作成者がスポークです。 ほぼすべてのアプリケーションが接続されているになると、待ち時間「中心的な問題を回避コード」として浮上してきています彼のノートそれではなぜしていないたぶんをサポートする非同期、します。Net 4 か。

「位置、機能セットのリリースでは、私たちにどのような言語機能が、よう必要があります、深刻な理解がないロックダウンされた」Torgersen は言います。 "しかし、F# 私たちは道を終了する非同期の言語機能と同時に出荷します。 C# ~ Visual Basic の 10 出荷時点で、マウントの証拠性の次の行をし、実際には、言語レベルで解決する必要なに問題があったことをする必要があります今回します。"

Torgersen、主要な実装方法は非常に簡単に説明します。 ソリューションである「一時停止および再開するには、"飛行中のコードの実行をします。 生成されたコードに別のビットが切る +20 するのではなく、チーム テクニック」では、ユーザーのコードで適切なスポットに parachute 使用"。 元のソース コードの構造を維持し、利点をはかります- と結果を説明するは困難になります。

「驚くほど小さなバグ尾部の矛盾した、」Torgersen は述べています。

非同期の進化

プログラミング言語のマイクロソフトの主力の管理は、新しい非同期プログラミング機能の C# と Visual Basic の最新の一連の重要な革新的なステップをマークします。 過去数年間で機能していて、動的プログラミングは、ほとんど最近の非同期プログラミングの側面に、言語を採用しています。 リサ Feigenbaum、Microsoft では、Visual Studio グループのプログラム マネージャーについて説明すると、「最高の各言語のスタイルを適合します」の方法でこれらの機能を組み込むために、作業が行われました。

"などの動的言語の相互運用性への Visual Basic が言語の一部であった、遅延バインディング構成要素を利用して追加されました。 さらに、C# で動的に呼び出す静的な型を追加"Feigenbaum といいます。 "の関数型プログラミング、ラムダを Visual Basic に追加するときに、よくキーワードの構文 Sub と End Sub および関数/終了関数を使用します。 ただし、C# 冗長であるため、シンボルの構文を使用する使用 ' = >'。 これらのデザインは、元の文字を保持し、それに伴い開発者にはなじみのまま各言語ヘルプ]

追加の重要な新しい機能はプログラミング言語には、単純な作業はありません。 Feigenbaum「が正解になるまでの機能が追加されませんに重点を置いて、非常に控えめなプロセスとして、」言語の設計を説明します。 非同期の場合は、新しい機能の最後のバージョンで導入された基礎で組み込まれている、します。NET フレームワークです。

"Visual Studio vNext 非同期のデザインに追加されたタスクの種類などの構築がします。NET Framework で。NET 4 の場合、"Feigenbaum は述べています。 「その基盤と、次のバージョンで追加された追加のフレームワーク サポートを使用して、私たちは非同期 Visual Studio vNext では満足していた、非常に洗練された言語の構文を設計する最終的にできました。」

今日では、開発者は、C# と Visual Basic するには、新しいリソースをよく理解して非同期 CTP で使用できます。 Torgersen、開発者は、非同期の時代の最高を準備するのには、1 つのことを実行できることを示す: タスク ・ ベースになります。

"でさえ。NET 4、タスクの種類は多くより良い通貨非同期アクティビティの私たちが古いパターンです。 まだコールバックに基づいてより洗練された方法では、言語のサポートが必要があるないためにする必要があります。 すべての署名を新しいタスク ベースのパターンに従いますが、ひときわだけではシンプルな '待機' 式で使用できる場合、1 日の準備をします」