使用一个管道在多个设备之间进行通信

时间:2014-08-30 13:47:29

标签: racket pipe

我目前正在Racket中编写一个项目,我需要与一些(模拟)设备进行通信。我正在使用Racket管道。设备可以从管道读取,并在管道上写入生成的答案。管理员还能够在管道上看到生成的答案并在管道上写入命令。

设备可以通过以下代码将消息写入管道:

File1:   
(#%require "communication.rkt")

(write-string message output)
(flush-output output)

通信导出输入和输出端口:

File2: 
(define-values (input output) (make-pipe #f))

管家从管道中读取消息:

File3: 
(#%require "communication.rkt")
(if (char-ready? input) 
    (read-string 1 input)

当de管家尝试从管道读取字符串时,'char-ready'总是返回#f ..但我确定设备在管道上写了一些内容。有没有人看到我的问题?

谢谢!

0 个答案:

没有答案