网站首页 > 易语言相关 > 网络相关源码 正文
TCP客户端大多都是异步操作,发送数据后只能在回调里处理,而有一些特殊业务可能需要发送后同步返回。
部分模块或支持库也有同步返回,但只支持单线程单包返回,经常看到有人在问这方面的问题
所以吃完粽子后趁消化之余闲着没事就顺手写了个 多线程TCP发送数据同步接收
实现思路:
1:发送数据前取一个唯一标识,和创建一个事件,保存该事件ID和唯一标识放到数组里
2:把唯一标识写入到数据里一并发送到服务器,然后调用事件等待
3:服务器接收到数据后处理完相关命令ID,在发回给客户端的数据里带上客户端发来的唯一标识
4:客户端收到数据时取出 唯一标识,再到数组里通过唯一标识取出 事件ID,再把数据放到数组里,触发事件ID,另外线程那边发送的就能收到通知了。
5:在发送线程收到事件触发后,根据唯一标识在数组里取出服务器返回的数据,再释放事件ID和删除相关缓存数据
这样就完成了发送数据后同步接收过程
TCP套件用的是 客户端/服务器组件
代码包含了 组包/拆包
该思路方法通用于所有TCP模块或支持库,如有需要请自行移植!
@烂人
- 上一篇: 易语言面向对象精华
- 下一篇: winhttp自带的WebSocket Win10可用
猜你喜欢
- 2025-01-03 夸克网盘扫码登录+账号信息查询源码
- 2024-09-13 精易web浏览器采集例子 dd373游戏网
- 2024-09-12 Brotli (br)压缩/解压动态库调用方法,支持进度压缩/解压
- 2024-09-11 QQ空间二维码登录源码
- 2024-04-07 最新NT框架可用QQ群验证
- 2024-03-21 蓝奏云直链解析纯协议源码
- 2024-03-20 基于E2EE的无状态认证JsonWebToken算法、常用Web算法模块
- 2024-03-18 YoLo8本地cpu识别源码
- 2024-03-16 搜索引擎 下拉关键词例子 支持百d\搜狗\必应\搜狗手机版
- 2024-03-15 ZIP解压缩模块源码
欢迎 你 发表评论:
- 百度站内搜索
- 关注微信公众号
- 网站分类
-
- 网站公告
- 电子书书籍
- 程序员工具箱
- 编程工具
- 易语言相关
- 网络相关源码
- 图形图像源码
- 系统工具源码
- 易语言模块源码
- 易语言支持库
- 数据库类源码
- 易语言例程
- 易语言游戏开发
- 易语言模块
- 多媒体类源码
- 易语言资源网
- 易语言视频教程
- JS分析教程
- 易语言图文教程
- 易语言常见问题及笔记
- 工具源码
- 易语言版本
- 网络编程
- javascript
- PHP编程
- html
- 正则表达式
- 面试题
- nodejs
- 其它综合
- 脚本专栏
- python
- 按键精灵相关
- 按键精灵图文教程
- 按键精灵视频教程
- 按键精灵Q语言
- 按键精灵安卓版
- golang
- 游戏安全
- 火山相关
- 火山安卓软件
- 火山常见问题及笔记
- 火山安卓源码
- 火山视频教程
- 火山PC版本下载
- 火山PC视窗例程
- 互联网那些事
- 引流推广
- 项目揭秘
- 网络营销
- 营销软件
- QQ营销软件
- 娱乐软件
- 机器人插件
- 培训教程
- 技术教程
- 活动线报
- 数据库
- Redis
- Access
- MongoDB
- Mysql
- 问答
- 其它
- 易语言
- 需求
- 在线教程
- 多线程培训班
- 觅风易语言教程
- 模拟系列教程
- 集中营易语言教程
- 历史数据
- 随机tag










本文暂时没有评论,来添加一个吧(●'◡'●)