mirror of
https://github.com/godotengine/godot.git
synced 2025-11-03 15:11:19 +00:00
Modernize Thread
- Based on C++11's `thread` and `thread_local` - No more need to allocate-deallocate or check for null - No pointer anymore, just a member variable - Platform-specific implementations no longer needed (except for the few cases of non-portable functions) - Simpler for `NO_THREADS` - Thread ids are now the same across platforms (main is 1; others follow)
This commit is contained in:
parent
6ddfc8e718
commit
99fe462452
87 changed files with 385 additions and 1056 deletions
|
|
@ -163,7 +163,7 @@ Error HTTPRequest::request_raw(const String &p_url, const Vector<String> &p_cust
|
|||
thread_done = false;
|
||||
thread_request_quit = false;
|
||||
client->set_blocking_mode(true);
|
||||
thread = Thread::create(_thread_func, this);
|
||||
thread.start(_thread_func, this);
|
||||
} else {
|
||||
client->set_blocking_mode(false);
|
||||
err = _request();
|
||||
|
|
@ -209,9 +209,7 @@ void HTTPRequest::cancel_request() {
|
|||
set_process_internal(false);
|
||||
} else {
|
||||
thread_request_quit = true;
|
||||
Thread::wait_to_finish(thread);
|
||||
memdelete(thread);
|
||||
thread = nullptr;
|
||||
thread.wait_to_finish();
|
||||
}
|
||||
|
||||
if (file) {
|
||||
|
|
@ -640,8 +638,6 @@ void HTTPRequest::_bind_methods() {
|
|||
}
|
||||
|
||||
HTTPRequest::HTTPRequest() {
|
||||
thread = nullptr;
|
||||
|
||||
port = 80;
|
||||
redirections = 0;
|
||||
max_redirects = 8;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue