×
The sensitivity of a process instance is the set of events and time-outs that can potentially cause the process to be resumed or triggered.
A process instance is said to be sensitive to an event if the event has been added to the static sensitivity or dynamic sensitivity of the process instance.
A time-out occurs when a given time interval has elapsed.

Two types of sensitivities:
  1. Static sensitivity is fixed during elaboration, supported with a sensitivity list for each process in a module.
  2. Dynamic sensitivity may vary over time under the control of the process itself, support with wait() for a thread, or next_trigger() for a method.
run
Learn with Examples, 2020, MIT license
#include <systemc>
using namespace sc_core;
SC_MODULE(SENSITIVITY) {
events for inter-process triggering
  sc_event e1, e2;
  SC_CTOR(SENSITIVITY) {
register processes
    SC_THREAD(trigger_1);
    SC_THREAD(trigger_2);
    SC_THREAD(catch_1or2_dyn);
    SC_THREAD(catch_1or2_static);
static sensitivity for the preceeding process, can only "OR" the triggers
    sensitive << e1 << e2;
  }
  void trigger_1() {
delay trigger by a delta cycle, make sure catcher is ready
    wait(SC_ZERO_TIME);
    while (true) {
trigger e1
      e1.notify();
dynamic sensitivity, re-trigger after 2 s
      wait(2, SC_SEC);
    }
  }
delay trigger by a delta cycle
  void trigger_2() {
    wait(SC_ZERO_TIME);
    while (true) {
trigger e2
      e2.notify();
dynamic sensitivity, re-trigger after 3 s
      wait(3, SC_SEC);
    }
  }
  void catch_1or2_dyn() {
    while (true) {
dynamic sensitivity
      wait(e1 | e2);
      std::cout << "Dynamic sensitivty: e1 or e2 @ " << sc_time_stamp() << std::endl;
    }
  }
  void catch_1or2_static(void) {
    while (true) {
static sensitivity
      wait();
      std::cout << "Static sensitivity: e1 or e2 @ " << sc_time_stamp() << std::endl;
    }
  }
};
int sc_main(int, char*[]) {
  SENSITIVITY sensitivity("sensitivity");
  sc_start(7, SC_SEC);
  return 0;
}
Result:
e1 triggered at 0, 2, 4, 6 s; e2 triggered at 0, 3, 6 s
e1 or e2
Static sensitivity: e1 or e2 @ 0 s
e1 or e2
Dynamic sensitivty: e1 or e2 @ 0 s
e1 or e2
Static sensitivity: e1 or e2 @2 s
e1 or e2
Dynamic sensitivty: e1 or e2 @2 s
e2
Static sensitivity: e1 or e2 @3 s
e2
Dynamic sensitivty: e1 or e2 @3 s
e1
Static sensitivity: e1 or e2 @4 s
e1
Dynamic sensitivty: e1 or e2 @4 s
e1 or e2
Static sensitivity: e1 or e2 @6 s
e1 or e2
Dynamic sensitivty: e1 or e2 @6 s