socket: Unified Soket thread management.

This commit is contained in:
2025-06-19 11:59:32 +08:00
parent beaadfbf85
commit b2aa0d3752
17 changed files with 235 additions and 88 deletions

View File

@@ -5,9 +5,13 @@
#include <QMap>
#include <QMutex>
#include <QVector>
#include <QFuture>
#include <QPromise>
#include "ClientCore.h"
constexpr int MAX_SEND_TASK = 10;
struct TransTask {
bool isUpload{false};
QString localId;
@@ -43,9 +47,12 @@ public:
public:
void run() override;
void setTask(const QSharedPointer<DoTransTask>& task);
void sendCall(QSharedPointer<FrameBuffer> frame);
private:
bool isSuccess_{ false };
ClientCore* cliCore_;
quint32 curSendCount_{0};
QSharedPointer<DoTransTask> task_;
};
@@ -76,6 +83,7 @@ private:
private:
void RegisterFrameCall();
void SendFile(const QSharedPointer<DoTransTask>& task);
QFuture<bool> sendFrameAsync(const QSharedPointer<FrameBuffer>& frame);
private:
QSharedPointer<DoTransTask> downTask_;