Hallo, On Tuesday 19 December 2006 10:02, Torsten Foertsch wrote:
gibt es einen unter UNIX Systemen portablen Weg, alle offenen Filedescriptoren des aktuellen Prozesses zu ermitteln?
Erst mal die moegliche maximale Anzahl der FIledescriptoren herausfinden. Z.B.: #include <limit.h> int getOpenMax() { #ifdef OPEN_MAX return OPEN_MAX; #else int max = sysconf(_SC_OPEN_MAX); if (max == -1) { // huuh? // Use some default? Post a message? It's up to you. } return max; #endif } #endif Danach in einer Schleife ein inertes Kommand wie z.B. int ret; const int max = getOpenMax(); for (int i = 0; i < max; i++) { ret = fcntl(i, F_GETFL); if (ret != -1) exists(); } Roman -- Roman Fietze Telemotive AG Büro Mühlhausen Breitwiesen 73347 Mühlhausen Tel.: +49(0)7335/18493-45 http://www.telemotive.de