1

Microsoft.Threading.Tasks.Extensions が Mono プロジェクトをビルドできるように shim アセンブリを作成しようとしています (ここで問題を説明しました) が、よくわからないことがいくつかあります。

1) アセンブリには次のメソッドが含まれます (複数のオーバーロードを持つものもあります)。

  • キャンセルから、
  • ハンドル EapCompletion
  • ReadAsync
  • 非同期書き込み
  • FlushAsync
  • CopyToAsync
  • CopyToAsyncInternal
  • ReadBlockAsync
  • ReadLineAsync
  • ReadToEndAsync
  • WriteLineAsync
  • GetResponseAsync
  • GetRequestStreamAsync

転送する必要がある型と実装するメソッドを見つけるにはどうすればよいですか? また、転送する必要があるものは、どこにリダイレクトすればよいですか? この場合、Mono アセンブリには存在しないため、実装を提供する必要があると思いますが、どうすれば確実にわかりますか?

2) すべてを実装または型転送する必要がありますか、それとも自分のコードで使用されているものだけですか? 後者の場合、必要なタイプまたはメソッドの一部をスキップした場合、どうすればわかりますか? メソッドが見つからないというコンパイラ エラーが発生していないことに気付きました。探しているメソッドについてのヒントがなく、アセンブリが見つからないというエラーだけが表示されます。転送されていない型または実装されていないメソッドをそのままにしておくと、コンパイラからヒントが得られますか?

更新します。そこには、System.Threading.Tasks.TaskServices と AsyncExtensions の 2 つの型が定義されています。それらのどれも Android/Touch プロジェクトには知られていません。アセンブリによって参照される型のみを転送できますが、これら 2 つは転送できません。これは、それらを実装する必要があるということですか?

4

1 に答える 1