多线程socket收发数据

from threading import Thread
from socket import * def sendData():
while True:
sendInfo = input('<<')
udpSocket.sendto(sendInfo.encode('gb2312'),(destIp,destPort)) def recevData():
while True:
recvInfo = udpSocket.recvfrom(1024)
print('>>%s : %s'%(str(recvInfo[1]),recvInfo[0].decode('gb2312'))) udpSocket = None
destIp = ''
destPort = 0
def main():
global udpSocket
global destIp
global destPort
destIp = input('请输入对方IP:')
destPort = int(input('请输入对方Port:'))
udpSocket = socket(AF_INET,SOCK_DGRAM)
udpSocket.bind(('',6677)) ts = Thread(target=sendData)
tr = Thread(target=recevData) ts.start()
tr.start() ts.join()
tr.join() if __name__ == '__main__':
main()

多线程socket UDP收发数据的更多相关文章

  1. Android笔记:Socket客户端收发数据

    client.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" and ...

  2. Python——用socket和线程实现全双工收发数据

    用socket和线程实现全双工收发数据 1.基础知识 Socket(套接字) 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket.由此知道套接字是全双工的. 线程 ...

  3. udp客户端收发数据流程

    1.创建客户端socket开始进行通讯.2.这时服务端应该先启动,并在知道服务端的ip以及端口号的时候才能进行通讯.3.本地不需要绑定ip以及端口号,在用此套接字对象发送消息的时候会自动分配活动端口( ...

  4. boost.asio与boost.log同时使用导致socket不能正常收发数据

    现象: 1. 没有使用boost.log前能正常收发数据 2.加入boost.log后async_connect没有回调 fix过程: 1. gdb调试发现程序block在pthread_timed_ ...

  5. Hololens开发笔记:UDP接收数据

    Hololens的应用需要与其他设备通信的时候,UDP是比较方便的一种方式,Unity3d 2017.3 C#开发的时候可以用Windows.Networking.Sockets.DatagramSo ...

  6. Linux Socket - UDP链接包

    LINUX UDP SOCKET 01 UDP号绑定会报错吗? 会的,提示Address is using,本地的没有区别 UDP不需要发起链接,不知道是不是连接成功 client的IP地址和端口号不 ...

  7. UDP收发buffer尺寸对收发包流量的影响

    下午验证一个高流量发包问题时,发现了一个值得记录的问题:socket的收发buffer尺寸是会影响收发包的效率的,高流量通讯时,若socket的收发buffer尺寸过小会一定程度降低收发包效率. 自己 ...

  8. 通过 UDP 发送数据的简单范例

    package j2se.core.net.udp; import java.io.IOException;import java.net.DatagramPacket;import java.net ...

  9. Nginx学习笔记(四) 源码分析&socket/UDP/shmem

    源码分析 在茫茫的源码中,看到了几个好像挺熟悉的名字(socket/UDP/shmem).那就来看看这个文件吧!从简单的开始~~~ src/os/unix/Ngx_socket.h&Ngx_s ...

随机推荐

  1. 如何从Eclipse 迁移到Android Studio 且保持Eclipse项目结构

    本文demo下载:http://www.wisdomdd.cn/Wisdom/resource/articleDetail.htm?resourceId=531 Android项目 Eclipse与A ...

  2. NSURLRequest的缓存策略

    刚刚看到了一个小知识点,拿出来与大家分享一下,也是做个笔记. NSURLRequest有缓存策略,是这条属性: /*! @method cachePolicy @abstract Returns th ...

  3. LVS-NAT模式的配置详解

    由于实验室拟态存储的项目需要通过NAT模式来映射NFS服务器已实现负载均衡的目的,通过调研了多种负载均衡机制,笔者最终选择了LVS的NAT模式来实现需求,接下来通过博客来记录一下LVS-NAT模式的配 ...

  4. .net core 2使用ef core 2.0以db first方法创建实体类

    先安装以下三个包: Install-Package Microsoft.EntityFrameworkCore.SqlServer Install-Package Microsoft.EntityFr ...

  5. 设计模式——状态模式(C++实现)

    /////////context.cpp #include "context.h" void STContext::ChangeState(STState* pstState) { ...

  6. loadrunner 录制中文出现乱码的解决办法

  7. three.js 实现全景以及优化(1)

    实现一个三维全景;  然后思考优化问题; 于是我问了下webgl技术交流群朋友有啥解决方案; 对于krpano.js 的了解,只是知道百度全景用了这个技术; 最后还是选择了群友给出的three.js  ...

  8. 为什么会有可恶的腾讯电脑管家&怎么干掉它-电脑开机出现腾讯电脑管家-无法卸载腾讯电脑管家

    为什么会有可恶的腾讯电脑管家 怎么干掉它 电脑开机出现腾讯电脑管家 无法卸载腾讯电脑管家 某天,趁空闲,升级了一些常用软件,其中就升了新版电脑qq,晚上玩完电脑后关机睡觉,第二天早上开机.出现了图一: ...

  9. 使用angular-ui-router替代ng-router

    angular框架自身提供的ng-route在一定程度上满足了我们的需求,但是他只针对于单视图,比如点击一个link跳转到另一个视图,但是在实际业务中,需要一个状态对应的视图中还包含其他的视图,或者一 ...

  10. MSIL实用指南-生成索引器

    MSIL实用指南-生成索引器 索引器是一种特殊的属性,它有参数的,也有get和set方法,属性名称一般是"Item",并且方法名称一般名称是"get_Item" ...