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. java代码实现栈

    这几天在老家有点事,现在弄完了,继续研究一下数据结构,这次的栈并没有对多线程进行优化,如果有想优化的童鞋可以参考我上一篇文章对队列进行的优化,话不多说,上代码: package com.voole.c ...

  2. java多线程-信号量

    Semaphore(信号量)是一个线程同步结构,用于在线程间传递信号,以避免出现信号丢失,或者像锁一样用于保护一个关键区域.自从 5.0 开始,jdk 在 java.util.concurrent 包 ...

  3. 前端Demo常用库文件链接

    <!doctype html><html><head> <meta charset="UTF-8"> <title>前端 ...

  4. div盒子垂直水平居中

    div盒子,水平垂直居中. <!DOCTYPE html><html> <head> <meta charset="utf-8"> ...

  5. IOS开发基础知识--碎片35

    1:iOS视图控制对象生命周期 init-初始化程序 viewDidLoad-加载视图 viewWillAppear-UIViewController对象的视图即将加入窗口时调用: viewDidAp ...

  6. Linux常用命令:sed

    本文记录的是自己在学习<Linux私房菜>中正则表达式的笔记. 关于行尾符$ 如果文件本身没有内容,比如使用touch新建的文件,那么$将会没有意义.例如下面操作: 先使用touch新建了 ...

  7. 初学HTML 常见的标签(二) 列表标签

    上次介绍了一些简单的文本标签设计, 这篇介绍列表类标签, 通过列表能写出很好看的, 多元化的网络页面. ul-li 列表标签 <ul> <li>列表1</li> & ...

  8. 【转】JavaScript中的原型和继承

    请在此暂时忘记之前学到的面向对象的一切知识.这里只需要考虑赛车的情况.是的,就是赛车. 最近我正在观看 24 Hours of Le Mans ,这是法国流行的一项赛事.最快的车被称为 Le Mans ...

  9. 【转】十个JavaScript中易犯的小错误,你中了几枪?

    目录 常见错误一:对于this关键词的不正确引用 常见错误二:传统编程语言的生命周期误区 常见错误三:内存泄露 常见错误四:比较运算符 常见错误五:低效的DOM操作 常见错误6:在for循环中的不正确 ...

  10. Ruby的模型关系随笔

    1 Class和Module的实例方法也就是所有具体类和具体Module的类方法,因为具体类和具体Module分别是Class和Module的实例.例如Object.new对应着Class#new,K ...