このメッセージング ライブラリを使用したのはこれが初めてで、サンプル コードを使用して実装しました。初めて実行したときは完全に機能しましたが、解析方法が間違っているように思われたため、突然コードを停止しました。そのため、再起動すると、コードは次の行でフリーズします。
message = q.Receive()
メッセージキューが破損した可能性はありますか? サーバーマネージャーを確認したところ、以前と同じようにキューがまだ存在し、メッセージ数 = 1 のようです。これが私のコードの残りの部分です:
If MessageQueue.Exists(".\private$\TwitterQueue") Then
q = New MessageQueue(".\private$\TwitterQueue")
Else
'GS - If there is no queue then we're done here
Console.WriteLine("Queue has not been created!")
Return
End If
Try
While True
'GS - Try and pull back the next message
Dim message As Message
Try
message = q.Receive()
message.Formatter = New XmlMessageFormatter(New [String]() {"System.String"})
ProcessMessage(message)
Catch
end try
End While
編集:
キューの作成方法:
Dim q As MessageQueue = If((MessageQueue.Exists(".\private$\TwitterQueue")), New MessageQueue(".\private$\TwitterQueue"), MessageQueue.Create(".\private$\TwitterQueue"))
そしてそれがどのように使用されるか:
Dim msg As New Message(responseData)
q.Send(msg)
それがトランザクションであるかどうかを確認しました。
If q.Transactional = True Then
Thread.Sleep(2000)
End If
そうではありません。