首页| 论坛| 消息
主题:程序运行一段时间,就异常崩溃
回帖:firebolt:你这个任务挺简单的,但是设计的复杂了。这种情况不太好帮你找问题所在,归根结底是程序结构设计的问题。网络编程最基本的模式就是生产消费模式,数据采集是生产者,数据处理是消费者。它们可以通过消息队列来通讯。
.. (2019-08-18 12:57)
是4个线程,4个线程独立完成任务,每个服务器(摄像机)对应一个线程,C数据是需要根据服务器上的数据(就是摄像头扫的快递号和小车号),从厂家给的接口获取的,这个接口申通的是数据库,比较简单,中通的是http方式,比较麻烦,很慢四五十毫秒,而且是异步的。即这样
服务器A-Http-PLC
服务器B-Http-PLC
服务器C-Http-PLC
服务器D-Http-PLC

Socket4个实例(参数:不同的IP),Http有四个实例,PLC也有4个实例

因为4个socket是独立发数据的,这样可能同时发数据,那么Http就处理不过来了,后面的socket会覆盖前面的。
但是单个socket,一次发数据的间隔有几百毫秒,这样如果一个Http实例只接受一个Socket数据,就能来的及了,而且这样确实也解决了问题。

4个独立线程里面的对象应该都在不同的内存区,但是有些事静态的变量,比如一些配置,因为这些配置对所有的对象来说是一样的,所以我定义成了static。
哦,对了,这些数据都要发给主界面,通过信号和槽的方式,主线程只有一个实例,这算不算共享的存储区

麻烦,在看看,在提供一些思路
下一楼›:小韩老师:4个tcpserver,软件上应该是4个客户端连接吧,如果是4个客户端则是4个线程。你的单线程 ..
‹上一楼:九重水:楼主的公司真的是做PLC的吗?
同行?我做过上位机的PLC编译器和下位机的解释器。 &# ..

查看全部回帖(13)
«返回主帖