From: "David Allsopp" <dra-news@metastack.com>
To: "'Caml List'" <caml-list@inria.fr>
Subject: RE: [Caml-list] Closing all open file descriptors
Date: Fri, 14 Sep 2007 08:33:19 +0200 [thread overview]
Message-ID: <006b01c7f699$275fd6d0$017ca8c0@countertenor> (raw)
In-Reply-To: <Pine.LNX.4.63.0709131754020.24521@tenhost.net>
> I'm writing a daemon and I would like to be able to close all open file
> descriptors. As far as I can tell, there is no way to determine the
> maximum number of file descriptors available, and neither is there a way
> to get a file descriptor from an integer. The best I've come up with is
> the following:
>
> for fd = 0 to 1024 do
> try Unix.close (Obj.magic fd : Unix.file_descr)
> with Unix.Unix_error _ -> ()
> done;
>
> Is there a better way?
Probably irrelevant here, but this approach wouldn't work under Windows
(Unix.file_descr is the Win32 file handle at that point which is often
larger than 1024). More relevantly, Unix can be reconfigured to allow for
more than 1024 open files.
Wouldn't an easier, portable way be to wrap Unix.openfile and Unix.close to
maintain a set of open file_descrs or is your concern the risk of files left
open by third party code?
David
next prev parent reply other threads:[~2007-09-14 6:32 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-13 22:56 Dave Benjamin
2007-09-14 1:04 ` [Caml-list] " Erik de Castro Lopo
2007-09-14 6:35 ` Dave Benjamin
2007-09-14 6:48 ` Erik de Castro Lopo
2007-09-14 7:32 ` Dave Benjamin
2007-09-14 6:33 ` David Allsopp [this message]
2007-09-14 6:41 ` Dave Benjamin
2007-09-14 10:54 ` Andre Nathan
2007-09-14 10:00 ` Mattias Engdegård
2007-09-14 20:31 ` Dave Benjamin
2007-09-14 21:52 ` Oliver Bandel
2007-09-14 22:12 ` Markus E L
2007-09-15 9:15 ` Oliver Bandel
2007-09-15 9:26 ` Erik de Castro Lopo
2007-09-15 10:43 ` Oliver Bandel
2007-09-15 11:36 ` Mattias Engdegård
2007-09-15 11:57 ` Oliver Bandel
2007-09-15 14:27 ` Markus E L
2007-09-15 12:16 ` Oliver Bandel
2007-09-15 14:29 ` Markus E L
2007-09-15 18:04 ` skaller
2007-09-15 14:17 ` Markus E L
2007-09-15 14:16 ` Markus E L
2007-09-15 15:58 ` Eric Cooper
2007-09-15 16:17 ` Markus E L
2007-09-15 18:33 ` skaller
2007-09-15 17:44 ` skaller
2007-09-14 10:10 ` Gerd Stolpmann
2007-09-14 11:56 ` Oliver Bandel
2007-09-17 11:00 ` Ville-Pertti Keinonen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='006b01c7f699$275fd6d0$017ca8c0@countertenor' \
--to=dra-news@metastack.com \
--cc=caml-list@inria.fr \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox