On Wed, Mar 25, 2020 at 09:48:02AM +0000, Daniel P. Berrangé wrote:
On Wed, Mar 25, 2020 at 09:42:19AM +0000, Richard W.M. Jones wrote:
> Now runs a complete set of tests, notably including the AIO test.
>
> File descriptors are passed in and out as plain ints (instead of
> *os.File) for a couple of reasons: (1) We have to pass the plain int
> to syscall.Select. (2) Turning an fd into an os.File causes golang to
> set the blocking flag which is deeply unhelpful.
FWIW, using non-blocking FDs and syscall.Select is not normal best
practice for Go, where the expected model would be to use goroutines
with the file in blocking mode.
Right, however I couldn't find any documentation about how to
integrate a C library with that mechanism. Does libvirt-go do
anything like this?
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
libguestfs lets you edit virtual machines. Supports shell scripting,
bindings from many languages.
http://libguestfs.org