小编Shi*_*eng的帖子

同步读/写端口时避免递归?

Rebol 3中的所有端口操作都是异步的.我可以找到进行同步通信的唯一方法是调用wait.

但是在这种情况下调用wait的问题是它将检查所有开放端口的事件(即使它们不在传递给等待的端口块中).然后他们调用响应事件处理程序,但可以在其中一个事件处理程序中完成读/写操作.这可能导致递归调用"等待".

我该如何解决这个问题?

io asynchronous rebol rebol3

108
推荐指数
1
解决办法
3394
查看次数

Rebol 中 #[datatype] 构造函数的用途是什么

我刚刚在 Rebol 中遇到了这个语法来构造一些值:

>> #[email! "me@host.com"]
== me@host.com
Run Code Online (Sandbox Code Playgroud)

这似乎相当于

>> to email! "me@host.com"
== me@host.com
Run Code Online (Sandbox Code Playgroud)

和这个

>> #[string! "hello"]
== "hello"
Run Code Online (Sandbox Code Playgroud)

虽然出现这些错误:

>> #[integer! 1]
** Syntax Error: Invalid construct -- #[
** Near: (line 1) #[integer! 1]
>> #[decimal! 1]
** Syntax Error: Invalid construct -- #[
** Near: (line 1) #[decimal! 1]
>> #[string! 1] 
== [string! 1]
Run Code Online (Sandbox Code Playgroud)

我想知道这是做什么用的?它带来什么好处?

rebol rebol3

4
推荐指数
1
解决办法
218
查看次数

标签 统计

rebol ×2

rebol3 ×2

asynchronous ×1

io ×1