我在C#
。
在我的应用程序中,我有一个带有两个面板的表单。
pnlSearch
pnlSlide
每个线程由每个线程控制:
TH_Slide
TH_Search
TH_Slide
上调用 Form_OnLoad
,我可以在pnlSlide
内显示我的对象的所有信息。
while(true)
{
// do some infinite work to slide objects information.
Thread.Sleep(20000); // display for 20 secs.
}
pnlSearch
被隐藏,并会在调用TH_Search
时显示,当鼠标移动到表单内部时会处理此问题。在pnlSearch
内部,txtFilter
textBox和UserControl
对象作为持有者动态显示搜索到的信息。
现在问题是当我输入txtFilter
的{{1}}并从我的数据库加载信息并将其显示到pnlSearch
。
UserControl
变为TH_Slide.ThreadState
并且不再运行,因此WaitSleepJoin
中的幻灯片信息不会进行任何更改。
注意:使用委托处理交叉线程操作,因此不会抛出任何错误。
答案 0 :(得分:0)
我的应用程序现在通过设置
完美地工作TH_Slide.IsBackground = true
TH_Slide.Priority = ThreadPriority.Highest
TH_Search.Priority = ThreadPriority.Normal
我是多线程编程的新手,我无法完全理解为什么这个算法能解决我的问题。