一个多线程的变量问题 本帖最后由 dongfangshang 于 2012-05-26 15:58:17 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 temp是全局变量,不是线程内变量,所以线程启动后,不会等待,直接进入 temp++,这样这个操作就会影响线程,造成数据不一致,所以你要加锁或等待 多谢回复, num 是我线程内的变量, 第一个线程num=1没问题,第二个线程num=2,但当开启第二个线程时,第一个线程的num也变成2了, 如何能让class类中的 num 变量在不同线程中独立运行呢? num是Class1的内部静态变量,也就是num为Class1的全局变量。你需要将num定义在fun函数中,让num成为局部变量。 多谢回复, 我实际的确要把 num 定义为 Class1 内部的全局变量, 因为 Class1 内的其他方法还要调用num, 您的意思是即使是用多线程,调用同一个类,类中的全局变量也无法独立? 有什么办法可以达到我要的效果么? 不然 Class1 内部的方法需要互相传递 num 那太悲剧了, 有什么方法么? 各位高人 问题解决了, 在声明静态变量前加一个 [ThreadStatic] ,这样静态变量针对不同线程。 如何删除txt文本中的空行 关于this.DialogResult = DialogResult.Cancel;和this.close();的区别问题 关于获取文件路径的问题 C#中如何获取listbox中选中的文本值???急!!!! c#中获取图片RGB数据的方法 Tabpage动态添加dateGridview后的增,删,改问题(多表) C#中如何实现这样的效果~? 在线等!一个COM+的问题 水晶报表的分组与排序 .NET C#开发的网站,IE6打开时显示“无法打开INTERNET 站点,已终止操作”IE7,IE10能打开,求解 求高手能解这道题的!给分40分! C#如何动态的改变变量名
你需要将num定义在fun函数中,让num成为局部变量。