首页 新闻 会员 周边 捐助

关于c#多线程执行死循环内存上涨的试验

0
悬赏园豆:10 [已解决问题] 解决于 2012-10-25 10:16

工作的内容很简单,界面上一个按钮,点击后在线程里执行了一个死循环,循环体内调用了com的方法a,a方法什么都没做,。观察该程序的内存使用情况,发现内存上涨是间歇性的,每次上涨8-16k左右,

 1   private void btnTest_Click(object sender, EventArgs e)
 2         {
 3             Thread t = new Thread(sendmsg);
 4             t.Start();
 5         }
 6 
 7         private void sendmsg()
 8         {
 9             try
10             {
11                 byte[] csByte = { 0x5a, 0xa5, 0x23, 0x45, 0x65, 0xfe, 0x00, 0x03, 0x01, 0x01, 0x01, 0x02, 0x03, 0x4a, 0xf3 };
12                 short comType = 1;
13                 short length = 15;
14                 while (true)
15                 {
16                     //ocx.SendComTransmitMsgEx("00000000000000000001", comType, "123456789012345", length);
17                     ocx.Test();
18                    
19                     Thread.Sleep(1000);
20                 }
21             }
22             catch (Exception ex)
23             {
24                 MessageBox.Show("循环透传异常:"+ex.ToString());
25             }
26         }


不知道是什么原因导致上涨了。

噹里个噹的主页 噹里个噹 | 菜鸟二级 | 园豆:202
提问于:2012-05-04 14:49
< >
分享
最佳答案
0

原因很简单: Thread.Sleep(1000);

收获园豆:10
Halower | 小虾三级 |园豆:1723 | 2012-05-04 15:25
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册