我现在写了个winForm的程序,开一个线程thread_A,用来读取视频,对视频的帧进行处理,如果满足条件,就保存下来,同时视频会在界面上一帧帧的显示。每保存一帧开启另外的线程thread_B进行处理,程序正常运行后,会有一个thread_A和若干个thread_B。现在遇到了几个问题
1、thread_B处理完帧之后,是自动消亡还是需要我给个结束的标志?资源是系统自动回收的么?
2、如果thread_B正在艰难处理帧的时候,界面上视频的显示就明显的比较卡有没有什么好方法,让界面上的视频流畅的显示?
谢谢啦~~~
1、thread_B处理完帧之后,是自动消亡还是需要我给个结束的标志?资源是系统自动回收的么?
2、如果thread_B正在艰难处理帧的时候,界面上视频的显示就明显的比较卡有没有什么好方法,让界面上的视频流畅的显示?
谢谢啦~~~
解决方案 »
- 今天自学看书遇到的问题,请高手们进来帮助!!
- 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级[急..]
- 求一生成缩略图的类,内有要求
- 朋友们帮帮忙
- 控制台程序窗口关闭时间那个方法是什么来着?
- 怎样在输入(按键盘)四个数字后再调用其它方法?
- listbox中内容定时刷新时,不会有明显的抖动,且使刷新后的scrollbar保持在刷新前的位置
- 新手提问: 如何删除datagrid 里的一条数据(同时也删除数据库对应的数据--winform)
- 引用C++Dll时,进入回调就报错!求高手解答!十分感谢!
- 100分,几个简单的问题...
- 如何将两个字符串按位或
- 请问如何开发控件呀,我看人家开发的控件很复杂
2\可以学习xunlei,打开前先缓存一会
2.这个要实际看你如何实现的。你看看cpu的占用率。估计你保存的太频繁了。1秒你保存个十几帧,能不慢么。你确认一下先。
new Thread(()=>{MessageBox.Show("a");}).Start();
运行这句话,你会看到一个对话框提示,这个对话框和你的主线程互不干涉的,当你关闭你的主线程,你会发现程序没有执行完,因为还有线程在运行,你点击对话框的确认,线程就执行完了,程序也就会退出了。调试模式看的比较清楚。
直到下一个线程再创建,再由CLR分配新的栈?