powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Win & блокирующий/неблокирующий
13 сообщений из 13, страница 1 из 1
Win & блокирующий/неблокирующий
    #35594140
TheOne_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пишу программу для работы с COM-портом. Подскажите как под Win переключить блокирующий/неблокирующий режим работы. Есть ли аналог линуксявого select в винде?

Заранее благодарен!
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594148
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так select же есть в винде

на студии пишешь?
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594193
TheOne_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поставил Microsoft Visual C++ 2008 Express.
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594199
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так должен быть селект смотри WinSock.h

На счет блокирующего смотри режимы открытия. В линуксе так устанавливаются, может быть и в винде.
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594220
TenkfM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тут все написано, если верно понял

----------------------------------------------
«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» (с)
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594226
TheOne_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
нашел вот...
http://book.itep.ru/7/sock_71.htm

но чтото все про сокеты... под nix сокеты, порты вводы вывода все, условно- int fd; В винде есть отличия сокет это или коммуникационный порт?
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594239
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TenkfM Тут все написано, если верно понял

----------------------------------------------
«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» (с)

я, например, не нашел. Если это рассматривать как собственную интерпритацию посиксного управления терминалами (куда входит ком порт), то здесь, похоже, даже нет установки/снятия канонического режима.
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594249
clihlt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select из WinSock предназначен вроде только для сокетов.

Для комм портов для асинхронного ввода вывода вроде бы юзать OVERLAPPED параметр у функций ReadFile / WriteFile
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594259
Akh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TheOne_нашел вот...
http://book.itep.ru/7/sock_71.htm

но чтото все про сокеты... под nix сокеты, порты вводы вывода все, условно- int fd; В винде есть отличия сокет это или коммуникационный порт?

честно говоря, я селект для ком порта в винде не применял. Что селект в винде есть - это точно, для сокетов работает - тоже сто процентов.

Вообще, WinSock как когда-то кто-то говорил (Глюк, вроде) Бил спер в BSD для реализации сокетов, следовательно, разумно предпологать, что с ком портами они не пересекаются, и, вполне возможно, работать не будет.

Лучше тебе искать литературу по программированию COM-портов в винде, а не основываться на информации из линукс. Если что-то встретишь похожее - хорошо, а основные понятия могут в корне расходиться.
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594266
TheOne_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TenkfM Тут все написано, если верно понял

----------------------------------------------
«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» (с)

Отличная ссылка! Спасибо!

Наверное мне надо чтото типа Этого
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594300
TenkfM
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SetCommTimeouts - Проставляет таймауты при работе с портом.
Напр.:
Код: plaintext
1.
2.
3.
4.
5.
6.
   COMMTIMEOUTS timeouts={ 0 };
   timeouts.ReadIntervalTimeout          = MAXDWORD;
   timeouts.ReadTotalTimeoutMultiplier   =  50 ;
   timeouts.ReadTotalTimeoutConstant     =  50 ;
   timeouts.WriteTotalTimeoutConstant    =  0 ;
   timeouts.WriteTotalTimeoutMultiplier  =  0 ;
   SetCommTimeouts( hCOM, &timeouts );


----------------------------------------------
«Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации» (с)
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594335
TheOne_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем огромное спасибо! Не ожидал такой оперативной помощи!
...
Рейтинг: 0 / 0
Win & блокирующий/неблокирующий
    #35594464
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkhТак должен быть селект смотри WinSock.h

На счет блокирующего смотри режимы открытия. В линуксе так устанавливаются, может быть и в винде.

select действительно есть в winsock в видне. Но он работает ТОЛЬКО с сокетами TPC/IP.
С простыми файлами он не работает.

На сколько я помню, для цели ожидания готовности файлового дескриптора для операций ввода-вывода
можно использовать WaitForSingleObject и его аналоги. Или ещё какие-то другие функции.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Win & блокирующий/неблокирующий
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]