Merge pull request #45315 from RandomShaper/modernize_thread
Modernize Thread
This commit is contained in:
@@ -36,7 +36,6 @@
|
||||
#include "editor/editor_node.h"
|
||||
|
||||
GDScriptLanguageServer::GDScriptLanguageServer() {
|
||||
thread = nullptr;
|
||||
thread_running = false;
|
||||
started = false;
|
||||
|
||||
@@ -87,9 +86,8 @@ void GDScriptLanguageServer::start() {
|
||||
if (protocol.start(port, IP_Address("127.0.0.1")) == OK) {
|
||||
EditorNode::get_log()->add_message("--- GDScript language server started ---", EditorLog::MSG_TYPE_EDITOR);
|
||||
if (use_thread) {
|
||||
ERR_FAIL_COND(thread != nullptr);
|
||||
thread_running = true;
|
||||
thread = Thread::create(GDScriptLanguageServer::thread_main, this);
|
||||
thread.start(GDScriptLanguageServer::thread_main, this);
|
||||
}
|
||||
set_process_internal(!use_thread);
|
||||
started = true;
|
||||
@@ -98,11 +96,9 @@ void GDScriptLanguageServer::start() {
|
||||
|
||||
void GDScriptLanguageServer::stop() {
|
||||
if (use_thread) {
|
||||
ERR_FAIL_COND(nullptr == thread);
|
||||
ERR_FAIL_COND(!thread.is_started());
|
||||
thread_running = false;
|
||||
Thread::wait_to_finish(thread);
|
||||
memdelete(thread);
|
||||
thread = nullptr;
|
||||
thread.wait_to_finish();
|
||||
}
|
||||
protocol.stop();
|
||||
started = false;
|
||||
|
||||
@@ -40,7 +40,7 @@ class GDScriptLanguageServer : public EditorPlugin {
|
||||
|
||||
GDScriptLanguageProtocol protocol;
|
||||
|
||||
Thread *thread;
|
||||
Thread thread;
|
||||
bool thread_running;
|
||||
bool started;
|
||||
bool use_thread;
|
||||
|
||||
Reference in New Issue
Block a user