mirror of
https://github.com/ZLMediaKit/ZLMediaKit.git
synced 2026-07-03 00:47:34 +08:00
@@ -144,10 +144,12 @@ API_EXPORT uint16_t API_CALL mk_tcp_server_start(uint16_t port, mk_tcp_type type
|
||||
s_tcp_server[type]->start<TcpSessionWithSSL<TcpSessionForC> >(port);
|
||||
break;
|
||||
case mk_type_ws:
|
||||
s_tcp_server[type]->start<WebSocketSession<TcpSessionForC, HttpSession>>(port);
|
||||
//此处你也可以修改WebSocketHeader::BINARY
|
||||
s_tcp_server[type]->start<WebSocketSession<TcpSessionForC, HttpSession, WebSocketHeader::TEXT> >(port);
|
||||
break;
|
||||
case mk_type_wss:
|
||||
s_tcp_server[type]->start<WebSocketSession<TcpSessionForC, HttpsSession>>(port);
|
||||
//此处你也可以修改WebSocketHeader::BINARY
|
||||
s_tcp_server[type]->start<WebSocketSession<TcpSessionForC, HttpsSession, WebSocketHeader::TEXT> >(port);
|
||||
break;
|
||||
default:
|
||||
return 0;
|
||||
@@ -208,8 +210,10 @@ TcpClientForC::Ptr *mk_tcp_client_create_l(mk_tcp_client_events *events, mk_tcp_
|
||||
case mk_type_ssl:
|
||||
return (TcpClientForC::Ptr *)new shared_ptr<TcpSessionWithSSL<TcpClientForC> >(new TcpSessionWithSSL<TcpClientForC>(events));
|
||||
case mk_type_ws:
|
||||
//此处你也可以修改WebSocketHeader::BINARY
|
||||
return (TcpClientForC::Ptr *)new shared_ptr<WebSocketClient<TcpClientForC, WebSocketHeader::TEXT, false> >(new WebSocketClient<TcpClientForC, WebSocketHeader::TEXT, false>(events));
|
||||
case mk_type_wss:
|
||||
//此处你也可以修改WebSocketHeader::BINARY
|
||||
return (TcpClientForC::Ptr *)new shared_ptr<WebSocketClient<TcpClientForC, WebSocketHeader::TEXT, true> >(new WebSocketClient<TcpClientForC, WebSocketHeader::TEXT, true>(events));
|
||||
default:
|
||||
return nullptr;
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
#include "mk_tcp_private.h"
|
||||
#include "Util/logger.h"
|
||||
#include "Poller/EventPoller.h"
|
||||
#include "Thread/WorkThreadPool.h"
|
||||
using namespace std;
|
||||
using namespace toolkit;
|
||||
|
||||
@@ -27,6 +28,14 @@ API_EXPORT mk_thread API_CALL mk_thread_from_tcp_client(mk_tcp_client ctx){
|
||||
return (*client)->getPoller().get();
|
||||
}
|
||||
|
||||
API_EXPORT mk_thread API_CALL mk_thread_from_pool(){
|
||||
return EventPollerPool::Instance().getPoller().get();
|
||||
}
|
||||
|
||||
API_EXPORT mk_thread API_CALL mk_thread_from_pool_work(){
|
||||
return WorkThreadPool::Instance().getPoller().get();
|
||||
}
|
||||
|
||||
API_EXPORT void API_CALL mk_async_do(mk_thread ctx,on_mk_async cb, void *user_data){
|
||||
assert(ctx && cb);
|
||||
EventPoller *poller = (EventPoller *)ctx;
|
||||
|
||||
Reference in New Issue
Block a user