1
我想讓我的一個prolog程序在線程2中運行。當我在主線程中聲明某些內容時,線程2中的程序將監視該斷言並相應地執行不同的事情。我怎樣才能做到這一點?如何等待直到在prolog中聲明一個術語?
我寫這樣的東西,但它真的很糟糕,因爲它需要很多的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
線程模型是實現定義的。你應該說明你正在使用的Prolog。 – CapelliC 2013-03-08 15:43:01