R/Ryujinx.HLE/HOS/Kernel/Threading
Thog 55c956e2ec Make HLE disposable safely (#850)
* Make HLE disposable safely

This fix the oldest issue with the HLE code: the kernel side
disposability.

Changelog:

- Implement KProcess::UnpauseAndTerminateAllThreadsExcept, KThread::Terminate, KThread::TerminateCurrentProcess, KThread::PrepareForTermiation and the svc post handler accurately.
- Implement svcTerminateProcess and svcExitProcess. (both untested)
- Fix KHandleTable::Destroy not decrementing refcount of all objects stored in the table.
- Spawn a custom KProcess with the maximum priority to terminate every guest KProcess. (terminating kernel emulation safely)
- General system stability improvements to enhance the user's experience.

* Fix a typo in a comment in KProcess.cs

* Address gdk's comments
2019-12-26 02:50:17 +01:00
..
ArbitrationType.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
HleCoreManager.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
HleScheduler.cs Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
KAddressArbiter.cs Misc cleanup (#708) 2019-07-02 04:39:22 +02:00
KConditionVariable.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
KCoreContext.cs Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
KCriticalSection.cs Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
KEvent.cs Improve kernel IPC implementation (#550) 2019-01-18 20:26:39 -02:00
KReadableEvent.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
KScheduler.cs Add a new JIT compiler for CPU code (#693) 2019-08-08 21:56:22 +03:00
KSchedulingData.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
KSynchronization.cs Misc cleanup (#708) 2019-07-02 04:39:22 +02:00
KThread.cs Make HLE disposable safely (#850) 2019-12-26 02:50:17 +01:00
KWritableEvent.cs Improve kernel IPC implementation (#550) 2019-01-18 20:26:39 -02:00
SignalType.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
ThreadSchedState.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00
ThreadType.cs Refactor SVC handler (#540) 2018-12-18 03:33:36 -02:00