CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

C#有什么办法让程序无限循环,又可人工退出?

楼主Sopleasure()2006-03-23 15:00:47 在 .NET技术 / C# 提问

实现程序启动后处于“死”循环状态,当按下Stop按钮后能退出。  
   
  请大侠们指点下小弟   谢了 问题点数:50、回复次数:10Top

1 楼xrwang(无涯)回复于 2006-03-23 15:04:17 得分 5

做一个专门循环的工作线程,但是该线程中通过检查某个值来决定是否继续循环;  
  在按下"停止"按钮后改变上面说的那个值,让它不再循环.Top

2 楼gflpower(燕赤侠)回复于 2006-03-23 15:04:33 得分 5

 
  开启一个线程对象    
   
  bool   Canrun;  
   
  while   (canrun)    
  {  
      //执行无限  
  }  
   
  关键是要将设置canrun    
   
  以上只是思想  
  并没有C#代码  
  Top

3 楼Tom_Real()回复于 2006-03-23 15:06:07 得分 5

1、定义一个标志  
  2、循环中判断标志,并Sleep(10)  
  3、Stop事件更改标志Top

4 楼Sopleasure()回复于 2006-03-23 15:09:41 得分 0

public   bool   flag=true;  
  private   void   btnStart_Click(object   sender,   System.EventArgs   e)  
  {  
      while(flag)  
      {  
            SessionDel();  
      }  
   
  }  
  private   void   btnStop_Click(object   sender,   System.EventArgs   e)  
  {  
        flag=false;  
  }  
  我这样写有什么问题嘛?执行后就看不见stop按钮了。Top

5 楼CSDNATM(飞行员,麻烦帮开个窗让我透透气)回复于 2006-03-23 15:13:59 得分 5

TimerCallback   TCfun   =   new   TimerCallback(fun);  
  tmr   =   new   System.Threading.Timer(TCfun   ,null,3000,10);  
   
  要退出的时候就停了此线程。Top

6 楼xinggg(风之渡)回复于 2006-03-23 15:16:02 得分 10

public   bool   flag=true;  
  private   void   btnStart_Click(object   sender,   System.EventArgs   e)  
  {  
      while(flag)  
      {  
            SessionDel();  
        Application.Doevents();   '这里多出一句了具体doevents是属于哪个对象不是很确定,自己查一下  
      }  
   
  }  
  private   void   btnStop_Click(object   sender,   System.EventArgs   e)  
  {  
        flag=false;  
  }  
  Top

7 楼silencepen(沉默)回复于 2006-03-23 15:21:45 得分 4

用线程Top

8 楼whispers(快意人生)回复于 2006-03-23 15:30:03 得分 10

Application.DoEvents();Top

9 楼Ivony(授人以鱼不如授人以渔,上海谋生)回复于 2006-03-23 15:35:35 得分 2

都不知道你要干什么,如果真的是“死”循环,又怎么能点按钮?如果不是界面死掉,那程序开在那里你不动他窗口永远不会自己关闭……。Top

10 楼dqycxf(真爱你的云)回复于 2006-03-23 15:35:46 得分 4

最好的办法是开启一个线程,如xrwang(无涯)   和   gflpower(燕赤侠)   所说Top

相关问题

  • 无限循环
  • 无限循环
  • 按一下键盘,在VC中怎样退出无限循环--急用
  • 无限循环中~
  • C#中什么语句可以直接退出本次循环?急!!
  • 如何用java实现无限时间但间隔是5秒的循环程序,并可用q键退出循环和程序
  • C问题!!!为什么会出现无限循环呢?菜鸟求救!请大家帮忙!
  • 怎样退出循环?
  • 双循环break退出?
  • 如何退出循环?

关键词

  • c#
  • 循环
  • 线程
  • canrun
  • 退出
  • 程序
  • 按钮
  • doevents
  • eventargs e
  • 标志

得分解答快速导航

  • 帖主:Sopleasure
  • xrwang
  • gflpower
  • Tom_Real
  • CSDNATM
  • xinggg
  • silencepen
  • whispers
  • Ivony
  • dqycxf

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo