dup
-
Hallo,
In Linux gibt es eine Funktionint dup (int filedes);
damit man einen bestehenden Filedescriptor duplizieren kann. Ich verstehe nicht, was das Ziel der Funktion ist. Um eine Datei gleichzeitig zugreifen zu können? Sind der Rückgabewert und der filedes gleich, oder einfach zwei Descriptoren auf eine Datei zeigen?
Danke
-
dup kopiert einfach den File Descriptor in die niedrigste Descriptor Nummer, die frei ist. (siehe man 2 dup)
-
man macht das zb, um eine pipe auf fd 0 oder 1 zu legen ...
-
Hi,
Ist es gleichsinnig wie man "open()" zweimal ausführt?
Danke
-
Jein.
Wenn du mir dup oder dup2 einen Filedeskriptor kopierst, dann teilen sich neuer und alter Deskriptor File Locks, aktuelle Position in der geöffneten Datei usw.
Das hast du bei zweimaligen open() nicht.