您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> VC/MFC >> 两个小问题,大家遇到过没,无关代码,发言即有分

两个小问题,大家遇到过没,无关代码,发言即有分

来源:网络整理     时间:2016/7/26 23:22:23     关键词:

关于网友提出的“ 两个小问题,大家遇到过没,无关代码,发言即有分”问题疑问,本网通过在网上对“ 两个小问题,大家遇到过没,无关代码,发言即有分”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 两个小问题,大家遇到过没,无关代码,发言即有分
描述:

网络线程

1 软件发送文件给下位机,让它无限发送来测试它的性能,如果发送的是同样大小,同样间隔时间的文件,则会在同一个总量(即发送文件的累计大小)处发送失败,重启软件重新发送也会失败,修复网络连接也无效,而这个时候PING还是可以通的。但是一定要重启电脑后才能再次发送成功。
请问,是受什么参数影响呢?
2 买了一个公司的板卡,软件在线程中调用对方提供的动态库进行一系列操作,在其中一台电脑运行正常,但是换一台电脑则会出现死机的现象(鼠标和键盘都不能动弹),只有调用的函数运行完毕后才能动。两个电脑配置差不多,都是联想,2G内存,双核。
请问,这是受什么影响呢?
解决方案1:

引用 21 楼 zyrr159487 的回复:
引用 19 楼 oyljerry 的回复:更大可能性是别人的库文件有问题,可能某些机器上处理不够好,因为能够调用返回
通过
C/C++ code?12//启动处理线程AfxBeginThread(Thread, this);   
然后
C/C++ code?123456789//以下是死机时我方的线程中的循环while(GetMarkStatus())//等待判……

你加个sleep(200)看看死不死 解决方案2:

 两个小问题,大家遇到过没,无关代码,发言即有分

解决方案3:

第一个问题:提供的线索太少。是一个TCP长连接一直发送么?发送失败后WSAGetLastError返回什么?用wireshark抓包分析了么?
第二个问题:如果实在没有其他线索,可以尝试一下windbg内核态调试,需要两台机器,出问题的机器作为调试target,当系统假死的时候,break下来,看一下各个线程的调用栈,可以找到出问题的线程(包含第三方组件调用),根据栈顶层的API,可以分析出来原因。

解决方案4:

 两个小问题,大家遇到过没,无关代码,发言即有分静等大牛。。。

解决方案5:

引用 15 楼 zyrr159487 的回复:
引用 13 楼 sha_jinhao 的回复:估计是有什么库没有装好吧!(经历过运行ocx不会报错!)
运行的是工程 还是直接执行文件?
运行的RELEASE下的可执行文件,至于库的问题是有可能,我去跟那边核对一下。

更大可能性是别人的库文件有问题,可能某些机器上处理不够好,因为能够调用返回 解决方案6:

引用 14 楼 zyrr159487 的回复:
引用 12 楼 dream238 的回复:
对方有提供软件函数说明,其中并未提到需要COM初始化,只是介绍了通常的DLL静态和动态的调用方式;另外刚才看了12L的回复后,去用regsvr32注册对方的DLL,是无法注册的,所以应该不是COM组件。

虽然对方模块对外不是标准的COM组件,但是对方函数的内部是否用到了COM组件就不得而知了,如果内部用到了,当前调用线程没有COM初始化,那么是可能会有问题的。 解决方案7:

估计是有什么库没有装好吧!(经历过运行ocx不会报错!)
运行的是工程 还是直接执行文件?

解决方案8:

引用 11 楼 zyrr159487 的回复:
引用 10 楼 dream238 的回复:会不会调用有问题,比如不支持多线程使用,必须放到主线程什么的...
目前看来应该不会,因为这边的多台电脑都能正常运行,只有在另一边的公司电脑上运行时会有死机现象。如果说是多线程问题,应该大家都死机才是吧。

对方的库有没有COM初始化要求?有的话线程函数开始时有没有进行过COM的初始化? 解决方案9:

会不会调用有问题,比如不支持多线程使用,必须放到主线程什么的...

解决方案10:

但是换一台电脑则会出现死机的现象(鼠标和键盘都不能动弹),只有调用的函数运行完毕后才能动。
-----------------
什么函数?

解决方案11:

引用 5 楼 zyrr159487 的回复:
@ 3 楼 g6785654 的回复:]
感谢回复,是通过网线通信,台式组装机。

呵呵,网线通信的没怎么接触过,坐等LX大牛 解决方案12:

你用的是USB通信,还是串口通信,USB用的是2.0还是3.0,是不是串口的FIFO缓冲区设置的不一样,有些电脑的口是从主口分出来的,发送效果会不一样,原先测试过索尼,苹果,戴尔的,在戴尔上无问题,但在sony和苹果上都出现发送时间长会卡死现象


以上介绍了“ 两个小问题,大家遇到过没,无关代码,发言即有分”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2954849.html

相关图片

相关文章