public LibRetro(string modulename) { dll = new InstanceDll(modulename); if (!ConnectAllEntryPoints()) { dll.Dispose(); throw new Exception("ConnectAllEntryPoints() failed. The console may contain more details."); } }
public void Dispose() { instanceDll.Dispose(); foreach (var smb in DeallocatedMemoryBlocks.Values) { smb.Dispose(); } foreach (var smb in SharedMemoryBlocks.Values) { smb.Dispose(); } SharedMemoryBlocks.Clear(); DeallocatedMemoryBlocks.Clear(); }
public void Dispose() { WritePipeMessage(eMessage.eMessage_Shutdown); WaitForCompletion(); instanceDll.Dispose(); pipe.Dispose(); mmva.Dispose(); mmf.Dispose(); rbuf.Dispose(); wbuf.Dispose(); foreach (var smb in DeallocatedMemoryBlocks.Values) { smb.Dispose(); } DeallocatedMemoryBlocks.Clear(); }
public void Dispose() { //TODO: better termination of course instanceDllCore.Dispose(); instanceDll.Dispose(); }