Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.08;
Скачать: CL | DM;

Вниз

Как написать КлиентСокет на АПИ?   Найти похожие ветки 

 
ss18   (2002-05-27 23:30) [0]

Если у кого нибудь есть примерчик как это написать киньте плиз. Мучаюсь, ничего понять не могу.


 
cyborg ©   (2002-05-27 23:45) [1]

ctrl держишь, нажимаешь например на sendtext и так далее и придёшь к тому что увидишь, что сокеты итак на АПИ написаны


 
Digitman ©   (2002-05-28 12:27) [2]

>>ничего понять не могу

Что непонятно ? Конкретно ?


 
ss18   (2002-05-28 15:12) [3]

2Digitman ©
Конкретно: Как послать утп дейтаграму и принять ответ (тоже дайтагруму)?


 
Digitman ©   (2002-05-28 15:40) [4]

замечательно ! конкретней некуда ) ...
вот тебе, соответственно, и столь же конкретные ответы на вопрос "как" :

sendto() - для передачи дейтаграммы
recvfrom() - для приема дейтаграммы


 
ss18   (2002-05-28 18:20) [5]

а когда нужно вызывать recvfrom()? В ютом собственно и проблема. Причем нужно чтобы разные потоки могли сделать это одновременно (послать и/или получить)...Как в таком случае?


 
Digitman ©   (2002-05-29 09:13) [6]

recvfrom() нужно вызывать в контексте обработки события FD_READ, возникновение которого фиксирует факт наличия в буфере данных гнезда принятой дейтаграммы.

Разные потоки должны работать с разными гнездами. Нет никакого смысла в организации нескольких доп.потоков, конкурирующих за право доступа к одному и тому же гнезду по чтению-записи. Каждый же конкретный вызов recvfrom()/sendto() оперирует хендлом только одного (указанного в качестве параметра) гнезда.
Хотя ф-ции гнездового приема/передачи и являются threadsafe (содержат встоенный механизм мультипоточной синхронизации), злоупотреблять этим не следует и при мультипоточном доступе к этим ф-циям крайне желательно организовать собственный механизм синхронизации (используя critical section, mutex, semaphore e.t.c)



Страницы: 1 вся ветка

Текущий архив: 2002.08.08;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
3-23950
Unhandled Exception
2002-07-19 09:16
2002.08.08
Вопрос относительно создания потомка TDataSet а


3-23955
dzmitry
2002-07-02 10:23
2002.08.08
Btrieve for Linux


1-23969
Arhangel
2002-07-25 15:47
2002.08.08
Иконки


14-24190
AL2002
2002-07-11 16:57
2002.08.08
Какой предел температуры для нормальной роботы компьютера?


3-23942
Weare
2002-07-18 11:50
2002.08.08
Не открывается таблица...