我希望我的一个prolog程序在线程2中运行。当我在主线程中断言时,线程2中的程序将监视断言并相应地执行不同的操作。我怎样才能做到这一点?
我写了这样的东西,但它真的很糟糕,因为它占用了大量的CPU!
read_action(Act) :-
open('action.txt', read, Stream),
(can(go_next) ->
read_line_to_codes(Stream, Act),
write(Act),
close(Stream)
;
close(Stream),
read_action(Act)),
retractall(can(_)).
我正在使用Swipl