Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

7
  • Thanks. (1) "Synchronous means the signal is delivered immediately, because the program is being run (i.e. state running in the scheduler)." When the process is waiting to run under schedule, will it be switched to run immediately as the signal is sent? Or does the cause of the signal require the process to be currently running instead of waiting for the scheduler to let it run, so that it is impossible that the process isn't running when the signal is sent? Commented Aug 18, 2017 at 0:54
  • (2) What do asynchronous and synchronous mean when a process reacts to a signal delivery? Commented Aug 18, 2017 at 0:56
  • 1) By definition, a synchronous signal can only occur for a running program, it can not be waiting to be scheduled. 2) There is no difference, either the program is being run and it receives the signal immediately, or next time it is scheduled to run, it will be notified immediately that it has received a signal. Commented Aug 18, 2017 at 1:09
  • Thanks. (2) I guess you are talking the meaning of (a)synchronous when a process receives a signal. My question is about their meaning when a process handles a signal after receiving it as in "Asynchronously execute a specified procedure" Commented Aug 18, 2017 at 1:12
  • OK, I get it, sorry. In the receiver context, asynchronously means that it sets a signal handler and does its normal tasks, the signal handler being called when the signal is received. Synchronous means that the program actively waits for the signal to come and does nothing else. Commented Aug 18, 2017 at 1:23