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);
                }
            }
        }
Exemple #2
0
        /// <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();
            }
        }