84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
在unix-like系统编程中,如果涉及到文件的读写,就涉及到文件描述符的使用。因为文件描述符都是非负整数, 所以我想不出什么方法可以判断文件描述符已经被正在使用,但是我看书的时候发现有一个函数 dup2(int fields,int fields2) 这个函数是通过自己指定文件描述符(fields2),来复制现有的文件描述符(fields),如果指定的文件描述符已经 被使用,那么就会先把该文件描述符对应的文件先关闭!所以我就有疑问,它是怎样判断一个文件描述符已经被使用了?
学习是最好的投资!
用fcntl函数做F_GETFD操作,如果文件不是一个已打开的合法描述符,errno会设置为EBADF。可以man fcntl看下
用fcntl函数做F_GETFD操作,如果文件不是一个已打开的合法描述符,errno会设置为EBADF。可以man fcntl看下