guard signal allocation via mutex