-
Data: 2018-03-08 08:32:40
Temat: Re: resetowanie urządzenia USB
Od: Zbych <a...@o...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 08.03.2018 o 00:10, Adam Wysocki pisze:
> Zbych <a...@o...pl> wrote:
>
>> 2. read w trybie blokującym czeka na dane, jak wypnę w trakcie czekania
>> wtyczkę to przerywa czekanie zwracając 0, czego nie traktuję jako błąd.
>> Kolejne wywoływania read zwracają cały czas 0
>
> Wartość 0 oznacza EOF ("koniec pliku", zamknięte połączenie, koniec
> strumienia danych). To coś innego niż brak danych (bo wtedy jak sam
> zauważasz blokujący read poczeka, a nieblokujący zwróci EAGAIN).
Skoro write potrafi zwrócić kod 'Input/output error', to spodziewałbym
się takiego samego kodu błędu po read. To nie jest chwilowy brak danych,
który później się pojawią.
>> Problem polega na tym, że mam urządzenia z który tylko czytam dane
>> (skanery, klawiatury) i takie zachowanie read jest delikatnie mówiąc
>> irytujące.
>
> Hmm, jak dla mnie jest prawidłowe. Po prostu read() nie ma prawa zwrócić
> 0, jeżeli urządzenie jest podłączone i działa, ale nie ma danych. Wartość
> 0 oznacza, że kanał komunikacyjny został zamknięty i dane się skończyły
> (to nie to samo, co chwilowy brak danych, które mogą przyjść później, bo
> strumień jest otwarty; gdy read() zwróci 0, to dane już nie przyjdą).
Następne wpisy z tego wątku
- 08.03.18 11:05 Adam Wysocki
- 08.03.18 11:42 Zbych
- 08.03.18 13:29 Adam Wysocki
Najnowsze wątki z tej grupy
- Thunderbird i dysk...
- opornosc falowa
- Bateria 9V 6F22, alkaliczna v cynkowa, samorozładowanie, bateria wysokiej trwałości do miernika
- Tani zakup z ali?
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
Najnowsze wątki
- 2025-07-23 Gdańsk => Programista Delphi <=
- 2025-07-23 Gdańsk => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-23 Warszawa => Starszy inżynier DevOps (AWS) <=
- 2025-07-23 Gdańsk => Mainframe (z/OS, Assembler) Developer <=
- 2025-07-23 Kraków => Senior Fullstack Engineer (Low-Code Platform) <=
- 2025-07-23 Wrocław => Senior Key Account Manager IT <=
- 2025-07-23 Trójmiasto => Head of Social Media <=
- 2025-07-23 Rzeszów => Spedytor Międzynarodowy <=
- 2025-07-23 Lublin => ERP Implementation Consultant (AP Module) <=
- 2025-07-23 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-23 Warszawa => Inżynier oprogramowania .Net <=
- 2025-07-23 Kraków => Kotlin Developer <=
- 2025-07-23 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-07-23 Warszawa => Java Developer <=
- 2025-07-23 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=