
current_suspension(?Susp)

   Susp is a live (sleeping or scheduled) suspension.



Arguments
   Susp                A variable.

Type
   Advanced Control and Suspensions

Description
   Suspensions in ECLiPSe go through several stages: They are created,
   attached to variables or symbolic triggers, later scheduled for
   execution, and finally executed.


   current_suspension/1 nondeterministically enumerates all current
   suspensions. They may be either sleeping or already scheduled
   for execution. It does not return any dead suspensions.


   Note: Please do not use this predicate if you need all suspensions.
   Use suspensions/1 instead.




Modes and Determinism
   current_suspension(-) is nondet
   current_suspension(+) is semidet

Fail Conditions
   Fail is there are no suspensions or if Susp is a dead suspension

Examples
   
[eclipse 6]: suspend(writeln(a), 3, X->inst),
        suspend(writeln(b), 5, Y->inst),
        current_suspension(S),
	get_suspension_data(S, goal, G).

X = X
Y = Y
S = 'SUSP-_393-susp'
G = writeln(b)


Delayed goals:
        writeln(a)
        writeln(b)
More (0.00s cpu) ? ;

X = X
Y = Y
S = 'SUSP-_374-susp'
G = writeln(a)


Delayed goals:
        writeln(a)
        writeln(b)
More (0.00s cpu) ? ;

No (0.01s cpu)


See Also
   delayed_goals / 1, make_suspension / 3, kill_suspension / 1, schedule_suspensions / 1, schedule_suspensions / 2, suspend / 3, suspend / 4, suspensions / 1, get_suspension_data / 3
