This commit is contained in:
aozhiwei 2023-11-24 20:59:00 +08:00
parent b172c94f39
commit 6af8079f60
2 changed files with 12 additions and 10 deletions

View File

@ -76,13 +76,20 @@ namespace f8
argc_ = argc; argc_ = argc;
argv_ = argv; argv_ = argv;
user_app_ = user_app; user_app_ = user_app;
int delta_time = 0;
if (Init()) { if (Init()) {
while (!Terminated()) { while (!Terminated()) {
a8::tick_t begin_tick = a8::XGetTickCount();
f8::Timer::Instance()->Update(); f8::Timer::Instance()->Update();
f8::MsgQueue::Instance()->Update(); f8::MsgQueue::Instance()->Update();
DispatchNetMsg(); DispatchNetMsg();
user_app->Update(0); user_app->Update(delta_time);
a8::tick_t end_tick = a8::XGetTickCount();
Schedule(); Schedule();
//if (end_tick - begin_tick > PerfMonitor::Instance()->max_run_delay_time) {
//PerfMonitor::Instance()->max_run_delay_time = end_tick - begin_tick;
//}
delta_time = end_tick - begin_tick;
} }
UnInit(); UnInit();
} }
@ -240,6 +247,7 @@ namespace f8
MsgHdr* hdr = list_first_entry(work_list, MsgHdr, entry); MsgHdr* hdr = list_first_entry(work_list, MsgHdr, entry);
list_del_init(&hdr->entry); list_del_init(&hdr->entry);
user_app_->DispatchSocketMsg(hdr); user_app_->DispatchSocketMsg(hdr);
MsgHdr::Destroy(hdr);
} }
} }

View File

@ -306,20 +306,14 @@ namespace f8
MsgHdr* MsgHdr::Clone() MsgHdr* MsgHdr::Clone()
{ {
MsgHdr* hdr = (MsgHdr*)malloc(sizeof(MsgHdr)); MsgHdr* hdr = (MsgHdr*)malloc(sizeof(MsgHdr) + buflen);
*hdr = *this; memmove((void*)hdr, (void*)this, sizeof(MsgHdr) + buflen);
if (hdr->buflen > 0) { hdr->buf = ((char*)hdr) + sizeof(MsgHdr);
hdr->buf = (char*)malloc(hdr->buflen);
memmove((void*)hdr->buf, (void*)buf, buflen);
}
return hdr; return hdr;
} }
void MsgHdr::Destroy(MsgHdr* hdr) void MsgHdr::Destroy(MsgHdr* hdr)
{ {
if (hdr->buf) {
free((void*)hdr->buf);
}
free((void*)hdr); free((void*)hdr);
} }