我只是研究了wikipedia's entry on out-of-band data,据我所知,OOB数据在某种程度上被标记为更重要并且被视为普通数据,但是以单独的流进行传输,这使我深感困惑。
实际的问题是(“有人可以解释什么是OOB数据吗?”):
我正在编写一个使用套接字的Unix应用程序,需要使用select(),并且想知道如何使用exceptionfds参数?我是否需要将所有套接字放入此参数并对这些事件使用react?还是我只是忽略它们?
最佳答案
我知道您已经决定不需要处理OOB数据,但是如果您对OOt进行或护理,则需要牢记以下几点...
如果这看起来有点困惑和毫无值(value),那是因为它主要是这样。有充分的理由使用OOB,但这很少见。一个示例是FTP,在FTP中,用户可能正在进行大量传输,但决定中止。中止作为OOB数据发送。那时,服务器和客户端只需吃掉更多“正常”数据即可耗尽所有仍在传输中的数据。如果中止与数据一起进行内联处理,则所有未完成的流量都必须进行处理,而只能进行转储。
很高兴知道OOB的存在以及它工作原理的基础,以防万一您确实需要它。但是,除非您只是好奇,否则不要从内到外学习它。您可能永远都不会使用它。
关于sockets - 套接字编程: How do I handle out of band data,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/589928/