•  Back 
  •  Dateifunktionen 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help page 
  •  Show info about hypertext 
  •  View a new file 
Topic       : TOS - das Betriebssystem
Author      : 
Version     : tos.hyp (5. März 2013)
Subject     : Programmieren/Atari
Nodes       : 3001
Index Size  : 93602
HCP-Version : 5
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Titel
@help       : 
@options    : +g -i -s +x +zz -t4
@width      : 70
View Ref-File5.9.27  Fselect                                                    TOS

 Name:         »Fselect« - Abfrage des Dateistatus mit Timeout.

 Gemdosnummer: 285

 Deklaration:  int32_t Fselect ( int16_t timeout, int32_t *rfds, 
               int32_t *wfds, ((int32_t) 0) );

 Beschreibung: Die Funktion kontrolliert, welche geöffneten Dateien 
               zum Lesen bzw. Schreiben bereit sind. Der Parameter 
               rfds zeigt auf ein Langwort, welches eine Menge von 
               GEMDOS File-Deskriptoren repräsentiert.

               In diesem Langwort ist das Bit n gesetzt, wenn der 
               File-Deskriptor n auf Eingabe überprüft werden soll. 
               Eine leere Menge kann optional auch durch einen 
               Nullzeiger dargestellt werden.

               Analog zeigt wfds auf eine Menge von File-Deskriptoren, 
               deren Ausgabestatus überprüft werden soll.

               Bei Rückkehr der Funktion werden in rfds und wfds die 
               Handles der Dateien übergeben, die zum Lesen bzw. 
               Schreiben bereit sind, und auch überprüft werden 
               sollten.

               Zur Zeit ist das einzige BIOS Gerät, das mit Fselect 
               abgefragt werden kann, die Tastatur.

               Unter timeout kann angegeben werden, wieviele 
               Millisekunden gewartet werden soll, bevor die Funktion 
               zurückkehrt. Ein Wert von 0 bedeutet in diesem 
               Zusammenhang, daß die Funktion wartet, bis eine der 
               angegebenen Dateien zum Lesen bzw. Schreiben bereit 
               ist.

               Beispiel:

                Fselect (0, 0L, 0L, 0L) wartet für immer.
                Fselect (1, 0L, 0L, 0L) wartet für eine Millisekunde.

 Ergebnis:     Die Funktion kann folgende Rückgabewerte liefern:

                0 :       in der angegebenen Zeit wurde keine der 
                          Dateien zum Lesen bzw. Schreiben bereit 
                          (Timeout).
                >0 :      Summe der gesetzten Bits von rfds und wfds.
                EIHNDL :  mindestens eine der Handles ist keiner 
                          geöffneten Datei zuzuordnen.

 Verfügbar:    Seit der ersten in MultiTOS integrierten MiNT Version 
               1.04.

 Gruppe:       Dateifunktionen

 Querverweis:  Binding   Finstat   Foutstat