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); } } }
/// <summary> /// Send Data /// </summary> /// <param name="eventWaitHandle"></param> /// <param name="eventClientHandleName"></param> private void SendData(EventWaitHandle eventWaitHandle, string eventClientHandleName) { var sendData = m_SendQueue.Peek(); if (m_JsonShmSender.SaveToSharedMemory(sendData)) { eventWaitHandle.Set(); m_SendQueue.Dequeue(); using (var readEventWaitHandle = new EventWaitHandle(false, EventResetMode.AutoReset, eventClientHandleName)) { readEventWaitHandle.WaitOne(1000); } } if (m_SendQueue.Count > 0) { m_SendDataEvent.Set(); } }