You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-10 13:00:37 +00:00
Merge pull request #47076 from Faless/debugger/4.x_remote_peer_backoff
[Net] Make debugger peer less CPU intensive.
This commit is contained in:
@@ -190,13 +190,18 @@ Error RemoteDebuggerPeerTCP::connect_to_host(const String &p_host, uint16_t p_po
|
|||||||
}
|
}
|
||||||
|
|
||||||
void RemoteDebuggerPeerTCP::_thread_func(void *p_ud) {
|
void RemoteDebuggerPeerTCP::_thread_func(void *p_ud) {
|
||||||
|
const uint64_t min_tick = 100;
|
||||||
RemoteDebuggerPeerTCP *peer = (RemoteDebuggerPeerTCP *)p_ud;
|
RemoteDebuggerPeerTCP *peer = (RemoteDebuggerPeerTCP *)p_ud;
|
||||||
while (peer->running && peer->is_peer_connected()) {
|
while (peer->running && peer->is_peer_connected()) {
|
||||||
|
uint64_t ticks_usec = OS::get_singleton()->get_ticks_usec();
|
||||||
peer->_poll();
|
peer->_poll();
|
||||||
if (!peer->is_peer_connected()) {
|
if (!peer->is_peer_connected()) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
peer->tcp_client->poll(NetSocket::POLL_TYPE_IN_OUT, 1);
|
ticks_usec = OS::get_singleton()->get_ticks_usec() - ticks_usec;
|
||||||
|
if (ticks_usec < min_tick) {
|
||||||
|
OS::get_singleton()->delay_usec(min_tick - ticks_usec);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user