>
> I don't think this happens for normal file IO.

Right, good point. The stuff in the thread linked by Andrei applies to
Libuv streams only.

I think that Julia IO is built on libuv
>

Julia IO is mostly built on libuv, but file IO uses the internal ios
library that is part of flisp.

On Thu, May 19, 2016 at 5:43 PM, Yichao Yu <yyc1...@gmail.com> wrote:

> On Thu, May 19, 2016 at 5:24 PM, Andrei Zh <faithlessfri...@gmail.com>
> wrote:
> > Based on answers to my own question, I believe it's safe to assume that
> > `read()` on file will switch to another task during IO operation.
>
> I don't think this happens for normal file IO.
>
> >
> >
> >
> > On Tuesday, May 17, 2016 at 2:03:21 AM UTC+3, ggggg wrote:
> >>
> >> Hello All,
> >>
> >> I think that Julia IO is built on libuv, and that libuv offers
> >> asynchronous IO to the filesystem. Is this exposed through the Julia
> API? I
> >> can't figure it out from the documentation. I did a simple test
> >>
> >> julia> tic(); t = @async read(open("filename"),UInt8,2500000000);
> yield();
> >> toc()
> >>
> >> elapsed time: 9.094271773 seconds
> >>
> >> and it seems that reading blocks without yielding.
> >>
> >> Is there a way to do this where the reading task yields to other
> processes
> >> while it is getting the data from disk?
> >>
> >>
> >>
> >
>

Reply via email to