Dav*_*rks 5 linux io bash multithreading subprocess
这里简单的脚本:
a)不断从套接字读取并在关联数组中存储值
b)不断从stdin读取值并在关联数组中已存在时响应t/f
a&b是随机事件,不以任何方式关联.
诀窍是从两个子进程访问数组(因为在后台放置一个进程会将其作为子进程生成)
我正在考虑最好的策略,并且会出现一些想法,但我想知道是否有人有更好的想法:
1)将输入从套接字重定向到stdin作为子进程并在一个while循环中处理两个输入(数据大小很小,<30个字符,所以我猜它们将保持原子?).
2)读取套接字,然后在读取时使用小(0.1?)超时值读取STDIN,以模仿非阻塞I/O.
3) UPDATE:将套接字数据写入文件(实际上让其他进程将其直接写入文件),然后每次请求进入以检查该值是否存在时,处理文件中的条目,将它们添加到文件中.数组(使用文件锁定).