As understood from the Sequence-Diagram symbols, the sync-calls and async-calls have "solid line with solid head" and "solid line with thin head" respectively.
Consider the case, as;
- Some Notification, does add a message in queue (now this async thread dies here).
- There is already a processor-thread, for the queue, which checks on the queue-empty state, and proceeds with the processing of the messages in the queue, one after the other (this thread is looping over the queue.empty() check, to process the messages)
Now, the concern is;
- For the 1st point, how to represent the "platform notification" on the sequence diagram, as its like an event? [I have been using "dotted line" with "event name" so far, but as read from the UML specifics "dotted lines" are generally used for the returns]
- For the 2nd point, how to show case the "processor-thread operation" different from the first thread?. As, the sequence of the message-processing from the queue is not triggered in sequence of the message-added-to-the-queue (but the sequence is asynchronously followed).