Really useful video, just a bit of feedback for the editor that the slides could be much larger and the presenter video much smaller to make it easier to see the content
This is really useful, and most of this information is useful for non-Rust system programmers too. Thank you for such a great intro. Have you ever run into the situation where you receive a signal during an I/O operation and it returns EINTR, thus you need to go back and retry it? Is this mostly handled automatically by the Rust standard library, or does it need to be handled explicitly like we often (should) do in C?
Good question! The answer is that it depends. Rust's std::io::Write trait has two methods: `write` and `write_all`. `write` does not do a retry, but `write_all` does. If you can get away with `write_all` you should use that, but in many cases you can't... and then you have to remember to retry on interrupt. This is a pretty bad wart.
This is super practical, and useful immediately!! Great talk
Excellent. Thanks Rain for your contribution
Loved the talk veeery much! Awesome presenter, very informative presentation!
Awesome talk. Thanks!
Thank you!
Really useful video, just a bit of feedback for the editor that the slides could be much larger and the presenter video much smaller to make it easier to see the content
Very useful information. Thanks.
Thanks for the kind words!
This is really useful, and most of this information is useful for non-Rust system programmers too. Thank you for such a great intro.
Have you ever run into the situation where you receive a signal during an I/O operation and it returns EINTR, thus you need to go back and retry it? Is this mostly handled automatically by the Rust standard library, or does it need to be handled explicitly like we often (should) do in C?
Good question! The answer is that it depends.
Rust's std::io::Write trait has two methods: `write` and `write_all`. `write` does not do a retry, but `write_all` does. If you can get away with `write_all` you should use that, but in many cases you can't... and then you have to remember to retry on interrupt. This is a pretty bad wart.