Форма и ожидание сообщения из сокета.
while((ret= theSocket.Receive( str_out, sizeof(str_out), 0 )) > 0)
{
for (i = 0; i < (int) strlen(str_out); i++)
{
if (str_out == '#')
{
str_out = 0;
SetDlgItemText(IDC_EDIT2, str_out);
break;
}
else
{
SetDlgItemText(IDC_EDIT2, str_out);
}
}
}
Проблема в том, что сервер присылает сообщение в неопределенное время. Все это время форма находится в состоянии ожидания и "висит".
Можно ли ожидание сообщений из сокета вывести в отдельный процесс? По-моему, аналогом fork() в Visual C++ может выступить Thread.
А thread он и в винде thread и не ввинде, создается с помощью CreateThread
И вобще не хорошо это мешать вместе GUI скажем и различную бизнес-логику, сетевую активность в данном примере. Вот какой смысл в классе овечающем за работу окна ждать данных из сети? threads тут конечно помогут, но проектирование неверное.
Как правильно?
Не понятно разве - если есть класс для обработки окна (как вы называете форма), то там и должно быть только то что связанно с его графическим представлением.