A synch state is used for synchronizing concurrent regions of a superstate. It is used in conjunction with forks and joins to insure that one region leaves a particular state or states before another region can enter a particular state or states. The firing of outgoing transitions from a synch state can be limited by specifying a bound on the difference between the number of times outgoing and incoming transitions have fired.
Synch states are drawn on the boundary between two regions when possible.
Upper bound
A synch state is shown as a small circle with the upper bound inside it. The bound is either a positive integer, or an asterisk (*) for unlimited. You can specify the bound by typing in a value in the Upper Bound property of the Symbol tab of the Synch State’s definition dialog.