路过的来围观一下,看看是软件问题还是硬件问题
问题描述:
环境:
1.一台安装有XP操作系统的工控机。
2.C#语言开发的一套工控上位机软件。开发环境是WIN7操作系统+vs2012+sqlserver2005。
3.开发好的软件在该工控机上试运行进行测试。
问题现象:
在工控软件中有使用多线程操作。其中的主线程(UI线程)主要负责实时图形的绘制及显示,新开了一个线程主要完成数据的采集以及以及往数据库 里写入采集到数据。主线程抓取采集到数据进行实时绘图。另外,在主线程中除了一个实时绘制图形的窗口之外还有一个窗口负责静态数据的图形绘制且具有图形的局部放大与缩小功能(这部分处理是直接在控件上完成的,不涉及到控件的BeginInvoke操作),而且静态数据是通过读取数据库获取到的。
问题来了,^_^, 我昨天在测试的时候,先开启了软件的实时采集数据并动态绘图,这其中有对数据库的插入数据操作。 于此同时,我又打开了上述的静态数据的绘图操作界面,其中的数据来自读取数据库,就在我进行图形的局部放大操作的时候,噩梦来了,电脑瞬间重启.......... 心里那个脆啊。。。
于是,我就在思考一个问题,这个软件有这么严重的bug能导致工控机的重启? 即便有这个bug,是什么bug引起的?是线程使用不当导致的么? 盼望着大神的解救。。。。