perl6/rakudo: How could I disable autoflush?

2019-06-28 00:41发布

I tried this, but it didn't work:

$*OUT.autoflush( 0 );

2条回答
一夜七次
2楼-- · 2019-06-28 01:01

$*OUT.autoflush = False should disable it, and it runs without error, but it seems that parrot's IO still flushes automatically. So there currently doesn't seem to be an easy way.

查看更多
闹够了就滚
3楼-- · 2019-06-28 01:04

Rakudo doesn't support autoflush. There's a note in 5to6-perlvar under the $OUTPUT_AUTOFLUSH entry.

Some examples from a long time ago mention an autoflush method, but that has disappeared:

$*ERR.autoflush = True;
$*ERR.say: "1. This is an error";
$*OUT.say: "2. This is standard out";

But that doesn't work:

No such method 'autoflush' for invocant of type 'IO::Handle'

I haven't seen any discussions about when this might show up as a feature, or a proclamation that it will never be a feature.

查看更多
登录 后发表回答