1、

JSON那一块有点小问题,当我们和手机进行通信的时候,virtualswitch写成本机的地址 192.168.1.100即可。

还有就是 jsonstring.c_str() 后面没有 + 1,不然无法与手机进行通信。

2、路由器配置

(知识:路由器再接路由的时候,另一个路由的LAN口需要设置为另一个网段,否则无法上网)且需要手动配置DNS和备用DNS地址。

WLAN口需要配置DNS服务器。这里的WLAN口是从另一个路由器的LAN口过来的。也就是说,现在的两个路由器之间可以相关访问。

我们在做实验的时候,可以修改主机IP和手机IP在两个不同网段。

LAN口需要和WLAN口设置成不一样的配置:

3、ZMP再思考

循环数组有问题,我们可以将isNew放入数组内部,而不是全局变量出现。

类似isValid[6],当我们收不到数据的时候,应该将isValid置为0,也就是说,超时判断在本线程里面做,而不是另一个线程里面去做。

这里,我们的isValid写在循环数组里面,所有,可以随便调用。充当每一个数组的有效位,来判断是否是有效值。

对于isNew来说,每次得到有效的值,它是在操作的。且其值只有一个,可能会出现在不同线程当中,多次调用的出错。

4、阻塞与非堵塞

更改zmq模式里面的发送方式,改为阻塞式发送。

改用阻塞式的话,有一个很大的问题是,程序会堵塞在那,不会往后执行,除非加上超时退出功能。所以,此环节需要考虑到。当然,这个和程序的执行周期有关系。

只要保证 获取数据的周期 < 发送周期就行。

另外,发送数据需要一直发,即使没有目标也需要发送数据。

这样的话,只要我这边再发送数据,说明程序没有死。假如没有数据程序就死掉了。

我们可以规定最少发送数据数量为1.

假如说isNew只用到一次的话,是完全可以的。也就是说,用在一个线程里面,其实不是。在多个线程里面都有调用。

另外,阻塞模式应该是用不到了。因为,程序会死在那。

关于网络配置和zmp以及json的更多相关文章

  1. centOS7网络配置(nmcli,bonding,网络组)

    关于网络接口命名 CentOS 6之前,网络接口使用连续号码命名: eth0. eth1等,当增加或删除网卡时,名称可能会发生变化.CentOS 7使用基于硬件,设备拓扑和设置类型命名. 网卡命名机制 ...

  2. CentOS 7网络配置工具

    CentOS 7网络配置工具 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.网卡命名机制 CentOS 6之前,网络接口使用连续号码命名:eth0.eth1等,当增加或删除网卡 ...

  3. docker 网络和/etc/docker/daemon.json文件详情

    /etc/docker/daemon.json(没有就创建) [root@master ~]# /etc/docker/deamon.json { "registry-mirrors&quo ...

  4. DOCKER学习_005:Flannel网络配置

    一 简介 Flannel是一种基于overlay网络的跨主机容器网络解决方案,也就是将TCP数据包封装在另一种网络包里面进行路由转发和通信, Flannel是CoreOS开发,专门用于docker多机 ...

  5. docker的常用操作之三:网络配置

    一, docker安装后容器使用哪些网络类型? 在宿主机执行如下命令: [root@localhost liuhongdi]# docker network ls NETWORK ID NAME DR ...

  6. Docker网络配置进阶

    Docker启动会默认创建docker0虚拟网桥,是Linux的一个bridge,可以理解成一个软件交换机.它会在挂载到它的网口之间进行转发. 之后所有容器都是在172.17.0.x的网段上,并且可以 ...

  7. K8s二进制部署单节点 etcd集群,flannel网络配置 ——锥刺股

    K8s 二进制部署单节点 master    --锥刺股 k8s集群搭建: etcd集群 flannel网络插件 搭建master组件 搭建node组件 1.部署etcd集群 2.Flannel 网络 ...

  8. Docker容器网络配置

    Docker容器网络配置 1.Linux内核实现名称空间的创建 1.1 ip netns命令 可以借助ip netns命令来完成对 Network Namespace 的各种操作.ip netns命令 ...

  9. Linux 入门之网络配置

    查看网络状态 ifconfig 修改网络参数 实验环境centos6.5,其他系统自行百度 ls /etc/sysconfig/network-scripts 显示所有文件, vi /etc/sysc ...

随机推荐

  1. IT基础架构规划方案之实际网络设计案例

    根据某集团总部新办公大楼.厂房和分支机构(店面)的情况,以及IT部门对网络节点数.网络应用和分支机构(店面)的初步规划,对企业的总体网络拓扑结构进行设计,如下图. 设备选型和部署参考: 类型 设备选型 ...

  2. 服务器判断http是否中断

    一般来说,只需要send或者recv一下,如果结果为零,则为掉线. 1.当recv返回值为0是表示对方已经正常(MSDN说是完美的)的断开连接.2.当recv返回SOCKET_ERROR时,说明对方已 ...

  3. 留言列表模板HTML代码

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <t ...

  4. xp系统下硬盘安装centos6.5

    引言: 电脑系统是Windows XP,电脑没有光驱.手头没有U盘.没有移动硬盘.电脑主板不支持U盘启动,在这种情况下想安装CentOS 6.0,有木有办法? 答案:有办法,请看下面教程! 必备工具: ...

  5. iOS Swift-HelloWord

    iOS Swift-HelloWord 按部就班选择Swif开发语言,输出HelloWord. override func viewDidLoad() { super.viewDidLoad() pr ...

  6. 课程上线 -“新手入门 : Windows Phone 8.1 开发”

    经过近1个月的准备和录制,“新手入门 : Windows Phone 8.1 开发”系列课程已经在Microsoft 虚拟学院上线,链接地址为:http://www.microsoftvirtuala ...

  7. Linux系统查看系统是32位还是64位方法总结

    这篇博客是总结.归纳查看Linux系统是32位还是64位的一些方法,很多内容来自网上网友的博客.本篇只是整理.梳理这方面的知识,方便自己忘记的时候随时查看. 方法1:getconf LONG_BIT ...

  8. SLF4j:Log facade abstract

    内 容: 应用中使用slf4j的工作流程 简单示例 ILoggerFactory实例化过程 由ILoggerFactory创建Logger实例 slf4j 适配器实现 自定义适配器 slf4j 如何选 ...

  9. Asp.Net MVC+BootStrap+EF6.0实现简单的用户角色权限管理4

    首先先加个区域,名为Admin using System.Web.Mvc; namespace AuthorDesign.Web.Areas.Admin { public class AdminAre ...

  10. WPF 自定义Expander

    自定义Exander,收缩侧边栏 样式如下 <Grid> <Grid.Resources> <ControlTemplate x:Key="ExpanderCo ...