예제 #1
0
파일: MessageQueue.cs 프로젝트: mind0n/hive
		protected void ProcessMessage(Message msg)
		{
			if (msg != null)
			{
				msg.Process(this);
			}
		}
예제 #2
0
파일: MessageQueue.cs 프로젝트: mind0n/hive
		protected virtual Message Add(Message msg)
		{
			int i = GetIndex(msg.Priorty);
			if (i < 0)
			{
				Messages.Add(msg);
			}
			else
			{
				Messages.Insert(i, msg);
			}
			if (!vIsStarted)
			{
				Start();
			}
			return msg;
		}
예제 #3
0
파일: MessageQueue.cs 프로젝트: mind0n/hive
		protected virtual Message Add(MessageDelegate processor, DictParams parameters, int priority, bool isParallel)
		{
			Message m = new Message(processor, parameters, priority, isParallel);
			int i = GetIndex(priority);
			if (i < 0)
			{
				Messages.Add(m);
			}
			else
			{
				Messages.Insert(i, m);
			}
			return m;
		}
예제 #4
0
파일: MessageQueue.cs 프로젝트: mind0n/hive
		public void Wait(Message msg)
		{
			while (msg.Status != MessageStatus.Processed)
			{
				System.Threading.Thread.Sleep(100);
				continue;
			}
		}