updates /
【How-to】What is the difference between scanf and scanf_s
5 Answers. fgets() is a blocking function, it is meant to wait until data is available. If you want to perform asynchronous I/O, you can use select() , poll() , or epoll() . And then perform a read from the file descriptor when there is data available.