| 12345678910111213141516171819202122 |
- using System;
- using System.Threading;
- namespace Ryujinx.HLE.HOS.Services
- {
- abstract class DisposableIpcService : IpcService, IDisposable
- {
- private int _disposeState;
- public DisposableIpcService(ServerBase server = null) : base(server) { }
- protected abstract void Dispose(bool isDisposing);
- public void Dispose()
- {
- if (Interlocked.CompareExchange(ref _disposeState, 1, 0) == 0)
- {
- Dispose(true);
- }
- }
- }
- }
|