aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/kernel/service_thread.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2020-12-09 21:27:05 -0800
committerbunnei <bunneidev@gmail.com>2020-12-28 16:33:47 -0800
commit28281ae2500a4af9c36c26de5ba07b80d440b335 (patch)
tree8113b0af071dbe7004f5f072862d47f557a9eb27 /src/core/hle/kernel/service_thread.h
parent7dbdda908c8eca9a47475112ef2f32059e6e2de2 (diff)
core: hle: server_session: Use separate threads for each service connection.
Diffstat (limited to 'src/core/hle/kernel/service_thread.h')
-rw-r--r--src/core/hle/kernel/service_thread.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/core/hle/kernel/service_thread.h b/src/core/hle/kernel/service_thread.h
new file mode 100644
index 000000000..d252490bb
--- /dev/null
+++ b/src/core/hle/kernel/service_thread.h
@@ -0,0 +1,27 @@
+// Copyright 2020 yuzu emulator team
+// Licensed under GPLv2 or any later version
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <memory>
+
+namespace Kernel {
+
+class HLERequestContext;
+class KernelCore;
+class ServerSession;
+
+class ServiceThread final {
+public:
+ explicit ServiceThread(KernelCore& kernel);
+ ~ServiceThread();
+
+ void QueueSyncRequest(ServerSession& session, std::shared_ptr<HLERequestContext>&& context);
+
+private:
+ class Impl;
+ std::unique_ptr<Impl> impl;
+};
+
+} // namespace Kernel