[.NET] 当用System.Messaging.MessageQueue.Send传送数据遇到InvalidCastException、NullReferenceException

在多线程程序中使用MessageQueue Class来传送数据,很容易遇到InvalidCastException、NullReferenceException等等错误讯息。

 

这时只需要在传送数据的程序代码上加入lock机制,强制一次只能有一条线程传送,就可以避免掉这个问题。

 

lock(_messageQueue)
{
    _messageQueue.Send(dataBytes);
}


posted @ 2013-05-10 15:18  Clark159  阅读(400)  评论(0编辑  收藏  举报