WaitCommEvent и размер очереди
Столкнулся с такой проблемой:
После асинхронного вызова WaitCommEvent, в случае успешного завершения асинхронной операции
if((ret=GetOverlappedResult)!=0) сразу же смотрю размер очереди через ClearCoomError(,,&cs).
Так вот часто и очень часто !!! я бы сказал cs.cbInQue равно нулю.!!!
Видимо, нужно чего то еще ждать (например, обновлено ли значение размера буфера???). В MSDN ничего не нашел! Может есть какая-нибудь как всегда незадокументированная функция? или есть другой способ??
Очень хотелось бы получить ответ.
С уважением
Цитата:
Originally posted by takedo
Добрый день.
Столкнулся с такой проблемой:
После асинхронного вызова WaitCommEvent, в случае успешного завершения асинхронной операции
if((ret=GetOverlappedResult)!=0) сразу же смотрю размер очереди через ClearCoomError(,,&cs).
Так вот часто и очень часто !!! я бы сказал cs.cbInQue равно нулю.!!!
Видимо, нужно чего то еще ждать (например, обновлено ли значение размера буфера???). В MSDN ничего не нашел! Может есть какая-нибудь как всегда незадокументированная функция? или есть другой способ??
Очень хотелось бы получить ответ.
С уважением
Добрый день.
Столкнулся с такой проблемой:
После асинхронного вызова WaitCommEvent, в случае успешного завершения асинхронной операции
if((ret=GetOverlappedResult)!=0) сразу же смотрю размер очереди через ClearCoomError(,,&cs).
Так вот часто и очень часто !!! я бы сказал cs.cbInQue равно нулю.!!!
Видимо, нужно чего то еще ждать (например, обновлено ли значение размера буфера???). В MSDN ничего не нашел! Может есть какая-нибудь как всегда незадокументированная функция? или есть другой способ??
Очень хотелось бы получить ответ.
С уважением
Ну сразу скажу, что
if((ret=GetOverlappedResult)!=0)
стоит написать никак не иначе, чем
if (( ret=GetOverlappedResult() )!= 0)
Цитата:
Originally posted by god3
Ну сразу скажу, что
if((ret=GetOverlappedResult)!=0)
стоит написать никак не иначе, чем
if (( ret=GetOverlappedResult() )!= 0)
Ну сразу скажу, что
if((ret=GetOverlappedResult)!=0)
стоит написать никак не иначе, чем
if (( ret=GetOverlappedResult() )!= 0)
Ну ты крут!!! А чего это изменит??? Это ведь писано от руки, проблема то совсем в другом!!!
По твоему так я тебя тоже должен поправить:
if (( ret=GetOverlappedResult() )!= 0);else ;
и что??? Блин, супер все тут таки крутые программисты...:devil:
Чего с очередью-то:???: :-? :!!!: :???: :-? :???: :-?