mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-06-13 11:41:44 +08:00
减少内存拷贝,提高websocket服务器性能
This commit is contained in:
@@ -31,8 +31,10 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <memory>
|
||||
using namespace std;
|
||||
#include "Network/Buffer.h"
|
||||
|
||||
using namespace std;
|
||||
using namespace toolkit;
|
||||
|
||||
namespace mediakit {
|
||||
|
||||
@@ -85,12 +87,10 @@ public:
|
||||
/**
|
||||
* 编码一个数据包
|
||||
* 将触发2次onWebSocketEncodeData回调
|
||||
* 第一次是数据头,第二次是负载数据
|
||||
* @param header 数据头
|
||||
* @param data 负载数据
|
||||
* @param len 负载数据长度
|
||||
* @param buffer 负载数据
|
||||
*/
|
||||
void encode(const WebSocketHeader &header,uint8_t *data,const uint64_t len);
|
||||
void encode(const WebSocketHeader &header,const Buffer::Ptr &buffer);
|
||||
protected:
|
||||
/**
|
||||
* 收到一个webSocket数据包包头,后续将继续触发onWebSocketDecodePlayload回调
|
||||
@@ -119,7 +119,7 @@ protected:
|
||||
* @param ptr 数据指针
|
||||
* @param len 数据指针长度
|
||||
*/
|
||||
virtual void onWebSocketEncodeData(const uint8_t *ptr,uint64_t len){};
|
||||
virtual void onWebSocketEncodeData(const Buffer::Ptr &buffer){};
|
||||
private:
|
||||
void onPlayloadData(uint8_t *data,uint64_t len);
|
||||
private:
|
||||
|
||||
Reference in New Issue
Block a user