オブジェクトの保持構造を定義するクラスを探しています。このオブジェクトの値は、このコンテナが作成されたときよりも後で設定される可能性があります。このような構造体をラムダやコールバック関数などで渡すと便利です。
言う:
class HoldObject<T> {
public T Value { get; set; }
public bool IsValueSet();
public void WaitUntilHasValue();
}
// and then we could use it like so ...
HoldObject<byte[]> downloadedBytes = new HoldObject<byte[]>();
DownloadBytes("http://www.stackoverflow.com", sender => downloadedBytes.Value = sender.GetBytes());
この構造を定義するのはかなり簡単ですが、FCLで利用できるかどうかを確認しようとしています。また、これを、スレッドセーフ、効率的な待機など、必要なすべての機能を備えた効率的な構造にしたいと考えています。
どんな助けでも大歓迎です。