# std.Io: give File a nonblocking bit on Windows · gitcafe/zig

[View on GitCafe](https://git.cafe/gitcafe/zig/commit/cb7be96644819e2e903c191e712d33b22f30a52a)

Repository: [gitcafe/zig](https://git.cafe/gitcafe/zig)

Visibility: public

Requested revision: cb7be96644819e2e903c191e712d33b22f30a52a

Requested commit: cb7be96644819e2e903c191e712d33b22f30a52a

Commit: cb7be96644819e2e903c191e712d33b22f30a52a

Tree: 2488dfeb47a58a5232f82dcde1da11559ec427f6

Author: Andrew Kelley

Committer: Andrew Kelley

## Message

```
std.Io: give File a nonblocking bit on Windows

This tracks whether it is a file opened in synchronous mode, or
something that supports APC.

This will be needed in order to know whether concurrent batch operations
on the file should return error.ConcurrencyUnavailable, or use APC to
complete the batch.

This patch also switches to using NtCreateFile directly in
std.Io.Threaded for dirCreateFile, as well as NtReadFile for
fileReadStreaming, making it handle files opened in synchronous mode as
well as files opened in asynchronous mode.

```

## Parents

- [c7c4e8d802c5c8ab2dc9d064c3985836e6677115](https://git.cafe/gitcafe/zig/commit/c7c4e8d802c5c8ab2dc9d064c3985836e6677115?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zig/tree/cb7be96644819e2e903c191e712d33b22f30a52a?format=markdown)
