|
分享源码
界面截图: |
- |
是否带模块: |
纯源码 |
备注说明: |
- |
继上一篇帖子 Python与易语言通讯_飞浆GPU_加速推理_精易论坛 (125.la) 有小伙伴提到在WINDOWS消息事件,COPYDATASTRUCT 方式进行Python与易语言通讯,所有收到的消息都在Windows消息回调里面感觉有些不太方便.如果能像HTTP协议那样访问即所得就好了,于是乎我花了一些事件更新上一篇帖子,没太大技术含量也算是异转同的一种方式吧.具体思路如下:
1.客户Duan(易语言)申请一片内存,并且填充为0,考虑到高并发环境使用HeapCreate是最好的,相比易语言的内存申请,堆管理器在最开始就申请了一大片内存然后由你在堆管理器中再次申请,更加高效,考虑时间问题在下面开源的代码中我还是使用的易语言的申请内存命令.
2.通过WINDOWS消息时间COPYDATASTRUCT 方式将第一步申请的内存,和自身进程的PID发送给服务端(Python),然后等待这片内存的数据从全部为0变成非0数据.
3.服务端(Python)通过WINDOWS消息时间COPYDATASTRUCT 收到任务和第一步申请的内存和客户Duan(易语言)PID后,在线程池中启动线程处理任务,当任务处理完毕后通过OpenProcess函数打开进程(注意权限),再通过WriteProcessMemory写入结果
4.易语言等待这片内存的数据从全部为0变成非0数据因为服务端Python的写入数据于是乎退出循环从内存中读取结果完成通讯.
可以看到易语言调用就像HTTP协议那样一句代码得到结果 !!简单同时高效!
易语言Python通讯.rar
(690.78 KB, 下载次数: 45, 售价: 1 枚 精币)
|
评分
-
查看全部评分
|