Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
librws
websocket
5
librws 为什么要自己写一个接收?
发布于 2022-03-24 21:49:21 浏览:587
订阅该版
ErnestChen1 librws,为什么放着原来的接收代码不用,而是自己写了一个接收的函数: `rws_bool rws_socket_recv_custom(_rws_socket *s)` ```c void rws_socket_idle_recv(_rws_socket *s) { _rws_frame *frame = NULL; if (s->custom_mode != 0x1234) { if (!rws_socket_recv(s)) { // sock already closed if (s->error) { s->command = COMMAND_INFORM_DISCONNECTED; } return; } const size_t nframe_size = rws_check_recv_frame_size(s->received, s->received_len); if (nframe_size) { frame = rws_frame_create_with_recv_data(s->received, nframe_size); if (frame) { rws_socket_process_received_frame(s, frame); } if (nframe_size == s->received_len) { s->received_len = 0; } else if (s->received_len > nframe_size) { const size_t nLeftLen = s->received_len - nframe_size; memmove((char *)s->received, (char *)s->received + nframe_size, nLeftLen); s->received_len = nLeftLen; } } } /* RT-Thread Team add */ else //为什么要用下面的这个函数来接收,我看里面还有一些不完善的代码? { if (!rws_socket_recv_custom(s)) { // sock already closed, Todo if (s->error) { s->command = COMMAND_INFORM_DISCONNECTED; } return; } } } ``` 用`rws_socket_recv_custom`这个函数的原因是什么呢? 是用原来的代码有坑吗? 想问问。
查看更多
mysterywolf
认证专家
2022-03-25
https://github.com/mysterywolf
你好 你看这个软件包哪里不爽可以对齐进行优化 提PR
2
个回答
默认排序
按发布时间排序
swet123
2022-03-24
ztlchina@foxmail.com
我本人的的想法: 1) 原来的代码,接收到的数据会再开辟一个内存放到了链表里。 然后又处理一下, 这样会占用了两份内存,接收一份,处理一份。 单片机内存比较小? 所以为了节省内存? 2) 后来写的没有全部完成,有些地方没有实现完整。
撰写答案
登录
注册新账号
关注者
0
被浏览
587
关于作者
swet123
ztlchina@foxmail.com
提问
13
回答
55
被采纳
2
关注TA
发私信
相关问题
1
websocket使用官方历程有问题
2
那个叫librws的websocket软件包调用完卡死怎么办
3
nopoll软件包使用不了
4
nopoll服务端如何实现
5
wss与https冲突
6
rtthread 有没支持WEBSOCKET服务器的程序
7
libws示例程序运行出现问题
8
有没有关于librws软件包的使用教程呢?
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
国产MCU移植系列教程汇总,欢迎查看!
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
LCD(mipi)+LVGL +gui(适配V8.x版本)
2
上海找工作的小伙伴们,私聊
3
【RA8D1-Vision Board】基于RT-Thread的UART实践
4
【RA8D1-Vision Board】基于RT-Thread的usb设备msc驱动测试
5
【RA8D1-Vision Board】基于RT-Thread的usb设备cdc驱动测试
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
Bootloader
AT
ART-Pi
Hardfault
CAN总线
FinSH
USB
文件系统
DMA
RT-Thread
SCons
线程
RT-Thread Nano
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
ota在线升级
WIZnet_W5500
I2C_IIC
UART
flash
cubemx
packages_软件包
freemodbus
潘多拉开发板_Pandora
PWM
定时器
ADC
BSP
中断
编译报错
socket
keil_MDK
GD32
flashDB
MicroPython
msh
Debug
ulog
SFUD
SDIO总线
rt_mq_消息队列_msg_queue
本月问答贡献
用户名由3_15位
25
个答案
3
次被采纳
踩姑娘的小蘑菇
16
个答案
3
次被采纳
xiaorui
7
个答案
3
次被采纳
sakumisu
5
个答案
3
次被采纳
JonasWen
5
个答案
2
次被采纳
本月文章贡献
比特饼干
4
篇文章
15
次点赞
ZVML_9668
3
篇文章
3
次点赞
Z_Y
2
篇文章
5
次点赞
Alipay
2
篇文章
3
次点赞
rvcore
2
篇文章
3
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部