2

私はKinectで開発しており、AllFramesReadyイベントでタスクを実行する必要があります。タスクは、を使用した多くの書き込みで構成されますBinaryWriter

フレーム(色、深さ、スケルトン)が短期間存在することを知っています。

using (var imageFrame = e.OpenColorImageFrame())
{
     // Do the heavy task writing tons of bits do a `BinaryWriter`
} // The frame is no longer available :(

それを並列化する方法はありますか?または、コードのパフォーマンスを向上させるためのトリックはありますか?

4

1 に答える 1

2

一般に、AllFramesReady イベント ハンドラーで手間のかかる作業を行わないでください。私の提案は、フレーム情報をキューに保存してから、別のスレッドを使用して保存された情報をディスク メモリに書き込むことです。キューに入る速度がキューから出る速度を超えると、ある時点でメモリが不足することに注意してください。

于 2013-04-12T06:58:22.553 に答える