use long for position in asyncfile