/// <summary> /// Constructor /// </summary> /// <param name="ipcName"></param> public IpcReceiver(string ipcName) : base(ipcName) { ReciveQueue = new Queue <T>(10); m_JsonShmReceiver = new JsonShmReceiver <T>(IpcName); m_ReciveThread = new Thread(ReciveThreadMain); m_Running = true; m_ReciveThread.Start(); }
/// <summary> /// Dispose /// </summary> /// <param name="disposing"></param> protected override void Dispose(bool disposing) { if (disposing) { m_Running = false; m_ReciveThread?.Join(); m_ReciveThread = null; m_JsonShmReceiver?.Dispose(); m_JsonShmReceiver = null; } base.Dispose(disposing); }
public void ShmSendReciveTest() { const string testData = "The Test Data"; const string shmName = "TestShm"; using (var shmSender = new JsonShmSender <string>(shmName)) { using (var shmReceiver = new JsonShmReceiver <string>(shmName)) { var send = shmSender.SaveToSharedMemory(testData); Assert.IsTrue(send); var recived = shmReceiver.LoadFromSharedMemory(); Assert.AreEqual(testData, recived); } } }