diff options
Diffstat (limited to 'test/04Network/main.cpp')
-rw-r--r-- | test/04Network/main.cpp | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/test/04Network/main.cpp b/test/04Network/main.cpp index d24e2b0..6db72ab 100644 --- a/test/04Network/main.cpp +++ b/test/04Network/main.cpp @@ -9,6 +9,7 @@ using namespace jin::input; using namespace jin::audio; using namespace jin::time; using namespace jin::thread; +using namespace jin::net; Timers timers; @@ -29,25 +30,22 @@ void onDraw() } -void thread2Runner(Thread* t) +void netWorkThread(Thread* t) { - int i = 0; + Thread::Variant v = t->demand(1); + Socket* socket = (Socket*)v.pointer; + char buffer[2048] = {0}; while (true) { - if (i++ == 1000000000) + Socket* client = socket->accept(); + if (client != nullptr) { - i = 0; - cout << (char*)(t->demand(1).pointer); + client->receive(buffer, sizeof(buffer)); + cout << buffer; } } } -void sendFunc(void* p) -{ - Thread* t = (Thread*)p; - t->send(1, "hello_"); -} - int main(int argc, char* argv[]) { Game* game = Game::get(); @@ -69,11 +67,14 @@ int main(int argc, char* argv[]) wndSetting.resizable = true; wnd->init(&wndSetting); - Thread t("Count", thread2Runner); + Net::get()->init(nullptr); - t.start(); - timers.after(2000, sendFunc, &t); + Socket socket(SocketType::TCP, 6438); + Thread t("Receive Network Data", netWorkThread); + t.start(); + t.send(1, &socket); + game->run(); game->quit(); |