AFoge videoSourcePlayer无法关闭摄像头,灯打开之后一直亮
关闭代码:
if(mv.videoSourcePlayer.InvokeRequired == true)
{
CloseSXT csxt = new CloseSXT(Closesxt);
mv.videoSourcePlayer.BeginInvoke(csxt);
}
private void Closesxt()
{
mv.videoSourcePlayer.SignToStop();
mv.videoSourcePlayer.WriteForStop();
}
mv 是在子线程中创建的实例对象,而CloseSXT 是一个delegate 委托,mv是一个我自己定义的类的实例化对象,其中也在此类中定义了VideoSourcePlayer控件,现在要调用VideoSourcePlayer控件的关闭方法,就出现不能跨线程访问控件的异常,于是就想使用委托和Invoke方式解决。但是使用后发现一直都没调用委托方法,摄像头关闭不了,一直都被占用。如果关闭主进程使用Evironment.Exit()是可以释放的,但是这样与程序是相违背的。
实在不知道怎么解决,求给我高手帮忙解决,另外我想如果有强制释放摄像头的方法的话,那就更好了。