Если я понимаю ваш вопрос, вы можете использовать smoutput
, определяемый системой как 0 0 $ 1!:2&2
, для отображения ваших этапов обработки на экране
someverb =: 3 : 0
smoutput '{ }'
code
smoutput '{+++ }'
more code
smoutput '{+++++ }'
more code
smoutput '{++++++++}'
)
, но вы должны знать, что места, которыеВы вставляете выражения smoutput, которые будут соответствовать объему обработки.
Например:
test =: 3 : 0
smoutput 6!:0 'hh:mm:ss.sss'
6!:3 (2) NB. 2 second delay
smoutput 6!:0 'hh:mm:ss.sss'
6!:3 (2) NB. 2 second delay
smoutput 6!:0 'hh:mm:ss.sss'
)
test ''
14:53:42.313
14:53:44.317 NB. after two second delay
14:53:46.326 NB. after two second delay
или ближе к выводу, который вы хотите
test1 =: 3 : 0
start=. 6!:0 ''
smoutput '[ ] 0%'
6!:3 (2) NB. 2 second delay
smoutput '[=== ] 25%'
6!:3 (2) NB. 2 second delay
smoutput '[====== ] 50%'
6!:3 (4) NB. 4 second delay
smoutput '[============] 100%'
(6!:0 '')- start
)
test1 ''
[ ] 0%
[=== ] 25%
[====== ] 50%
[============] 100%
0 0 0 0 0 8.01821