读书人

线程有关问题

发布时间: 2012-03-09 16:54:56 作者: rapoo

线程问题?
程序启动线程,实时探测网络,如果有反应,该线程暂停,程序处理网络响应,完毕后,线程继续,探测网络。
怎么才能让线程循环起来呢?

[解决办法]
不明白你的意思;
说详细点;
[解决办法]
程序中加入一个FLAG(布尔值)。
1.写一个循环,隔一段时间探测网络,如果有反应,则将FLAG置反。
2.处理网络相应的代码写在一个IF里,如果FLAG置反,则做IF里的网络处理。
3.处理完毕后,继续循环,直到符合条件退出。

写了一个大概,你参考一下。

string ControlWhile = "0";
bool Flag = false;
while (ControlWhile == "0")
{
//探测网络,如果有反应,则将FLAG置反。
/* 你的探测网络代码
if(探测网络,如果有反应)
{
.......
Flag = true;
}

*/

if (Flag == true)
{
/* 你的探测网络处理代码 */
}
/*

if(循环退出的条件)
{
ControlWhile = "1";
}
*/
Thread.Sleep(60000); //线程暂停1分钟,再次做
}
[解决办法]
可以用system.thread下的timer
具体用法参考msdn就可以

读书人网 >C#

热点推荐