c#中的多线程和打开文件

时间:2013-02-28 19:06:59

标签: c# multithreading image file video-capture

我想要2个线程打开1个文件,然后做一些进程。 详细说,我的文件是.avi视频,我从文件中提取帧。 我用1个线程提取奇数帧,用另一个线程提取偶数帧。

这是我的代码的重要部分:

Capture video = new Capture("c:\\5.avi");
Image<Bgr, Byte> Imageframe;
Imageframe = video.QueryFrame();

但是,当第二个线程工作时,打开同一个文件(5.avi),甚至是另一个文件 它给了我这条消息(无法从c:\ 5.avi创建捕获) 请告诉我该怎么做,我是线程编程的新手

感谢。

2 个答案:

答案 0 :(得分:2)

我建议让一个线程(仅)读取文件,然后用帧提供两个工作线程。不一定是唯一的方法,但会产生更清晰的代码。

答案 1 :(得分:0)

听起来你只能运行一个'捕获'过程。