The library is entirely threadsafe. This will make some people who worked with threads a bit concerned, because everybody knows that if a file descriptor is shared among threads, and two threads decide to read/write/perform any op that moves the file pointer, a mess is waiting to happen. And almost operations do touch the file pointer. But don't worry, the library is _truly_ threadsafe: it uses pread/pwrite, which do not touch the file pointer, and allows working on the same file simultaneously without concerns. Besides, it slightly improves performance by having less locking, less system calls, lower overhead and less calculation to perform the operation. Still, bear in mind that if you decide to work on the file outside libjio you need to lockf() the sections you're going to work on, because libjio relies on lockf() locking to warantee atomicity.