diff options
Diffstat (limited to 'src/core/hle/kernel')
| -rw-r--r-- | src/core/hle/kernel/kernel.cpp | 4 | ||||
| -rw-r--r-- | src/core/hle/kernel/kernel.h | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index e51a9d45a..739ddd4ef 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp | |||
| @@ -132,12 +132,16 @@ Object* ObjectPool::CreateByIDType(int type) { | |||
| 132 | } | 132 | } |
| 133 | } | 133 | } |
| 134 | 134 | ||
| 135 | /// Initialize the kernel | ||
| 135 | void Init() { | 136 | void Init() { |
| 136 | Kernel::ThreadingInit(); | 137 | Kernel::ThreadingInit(); |
| 137 | } | 138 | } |
| 138 | 139 | ||
| 140 | /// Shutdown the kernel | ||
| 139 | void Shutdown() { | 141 | void Shutdown() { |
| 140 | Kernel::ThreadingShutdown(); | 142 | Kernel::ThreadingShutdown(); |
| 143 | |||
| 144 | g_object_pool.Clear(); // Free all kernel objects | ||
| 141 | } | 145 | } |
| 142 | 146 | ||
| 143 | /** | 147 | /** |
diff --git a/src/core/hle/kernel/kernel.h b/src/core/hle/kernel/kernel.h index d2d624f6d..3f15da0ac 100644 --- a/src/core/hle/kernel/kernel.h +++ b/src/core/hle/kernel/kernel.h | |||
| @@ -167,6 +167,12 @@ private: | |||
| 167 | extern ObjectPool g_object_pool; | 167 | extern ObjectPool g_object_pool; |
| 168 | extern Handle g_main_thread; | 168 | extern Handle g_main_thread; |
| 169 | 169 | ||
| 170 | /// Initialize the kernel | ||
| 171 | void Init(); | ||
| 172 | |||
| 173 | /// Shutdown the kernel | ||
| 174 | void Shutdown(); | ||
| 175 | |||
| 170 | /** | 176 | /** |
| 171 | * Loads executable stored at specified address | 177 | * Loads executable stored at specified address |
| 172 | * @entry_point Entry point in memory of loaded executable | 178 | * @entry_point Entry point in memory of loaded executable |