aboutsummaryrefslogtreecommitdiff
path: root/test/04Network/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/04Network/main.cpp')
-rw-r--r--test/04Network/main.cpp29
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();