Модераторы: feodorv
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Правильная многопоточнось в сетевом приложении 
:(
    Опции темы
eXa
Дата 26.2.2008, 19:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 1.12.2006

Репутация: нет
Всего: нет



Как? Укажите недочёты. Вроде как работает, но очень много сомнений. Волнует такие вапросы как например создать массив хэндлов HANDLE hThread; и сокетов SOCKET s; или это всё лишнее. Помогитепожалуст разобраться в сабже 

Код

WSADATA lpWSAData;
SOCKET s;
struct sockaddr_in ssin;
char buf[1024];

DWORD id;
HANDLE hThread;

{
    WSAStartup(MAKEWORD(2,2),&lpWSAData);
    for(int i = 0; i < 5; i++) TestFunc();
    WaitForSingleObject(hThread, INFINITE);   
}

void TestFunc(char* lParam)
{
  hThread = CreateThread(0, 0, &ThreadProc, lParam, 0, &id);
}

DWORD WINAPI ThreadProc(LPVOID uin)
{
 s=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 memset((char*)&ssin, 0, sizeof(ssin));
 ssin.sin_family = AF_INET; 
 ssin.sin_addr.s_addr = inet_addr("194.67.23.111");
 ssin.sin_port = htons(25);
 connect(s, (sockaddr *)&ssin, sizeof(ssin));
 recvCount= recv(s, buf, 1024, 0);
 printf("%s", uin);
}



Это сообщение отредактировал(а) eXa - 26.2.2008, 19:54
PM MAIL   Вверх
jonie
Дата 28.2.2008, 01:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 5613
Регистрация: 21.8.2005
Где: Владимир

Репутация: 5
Всего: 118



Цитата

Волнует такие вапросы как например создать массив хэндлов HANDLE hThread

HANDLE hThread[10] ?

чтото интересный код.. ничего не чистится.. и нету даже return у процедуры ThreadProc ....
посмотрите простейшие примеры многопоточных серверов - там строк 25-40, куда как понятнее будет.


--------------------
Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет...
PM MAIL Jabber   Вверх
eXa
Дата 28.2.2008, 20:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 1.12.2006

Репутация: нет
Всего: нет



Код

HANDLE hThread[10] ?

да, но я имел ввиду, нужно ли это вообще, как и с сокетами, я думал как бы сетевая многопотчность отличается некоторами ньюансами от обычного построения многопоточности, может статью какую нибудь... в сети я ничего не нашёл=\ А что не чистится, да просто несчёл это важным в примере, хотя бывает и так забываю о таких моментах =\
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.1014 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.