Я использую NetMQ для обмена данными между процессами.
Я использую версию пакета NuGet 3.3.2.2 на .Net 4.5
Я хочу создать простое сообщение из строки и отправить его по адресу RequestSocket
.System.ArgumentNullException с NetMQ.Msg.Put()
Я продолжаю получать System.ArgumentNullException
, хотя не экземпляры являются нулевыми в любой точке.
мой сам код содержит:
static void Main(string[] args)
{
string exampleString = "hello, world";
byte[] bytes = new byte[exampleString.Length * sizeof(char)];
if (bytes == null)
{
return;
}
System.Buffer.BlockCopy(exampleString.ToCharArray(), 0, bytes, 0, bytes.Length);
var clientMessage = new NetMQ.Msg();
clientMessage.InitEmpty();
if (!clientMessage.IsInitialised)
{
return;
}
clientMessage.Put(bytes, 0, bytes.Length); //throws exception!
}
Нечетные. Кажется, что в этом [NetMQ code] (https://github.com/zeromq/netmq/blob/master/src/NetMQ/Msg.cs) ничего не было, что явно бросает это исключение. –
Это потому, что ваш 'clientMessage' инициализирован, но не имеет MsgType из-за' InitEmpty() '. –
@diiN_ Как вы можете его инициализировать? –