В приведенной функции есть буфер byte[] buffer = new byte[_tcpСlient.Available]; Он "местного значения". Мне нужно либо скопировать его в глобальный массив либо как-то сделать чтобы прием велся сразу в глобальный массив. Пробовал копировать в цикле - не получается. Максимум что удалось - это скопировать первый элемен массива, а нужно 256 (1460 максимум). Может есть что-то типа memcpy? Прошу помочь. Спасибо.
Код
// Цикл извлечения сообщений,
// запускается в отдельном потоке.
void ReceiveRun()
{
while (true)
{
try
{
string s = null;
//int i=0;
while (ns.DataAvailable == true)
{
// Определение необходимого размера буфера приема.
byte[] buffer = new byte[_tcpСlient.Available];
ns.Read(buffer, 0, buffer.Length);
s += Encoding.Default.GetString(buffer);
}
if (s != null)
{
ShowReceiveMessage(s);
s = String.Empty;
}
// Вынужденная строчка для экономия ресурсов процессора.
// Неизящный способ.
Thread.Sleep(100);
}
catch
{
ErrorSound();
}
if (_stopNetwork == true) break;
}
}
#endregion
Живи днем так, чтобы ночью ты спал спокойно.