If a thread is blocked, it's not scheduled by the operating system, so it can't do anything, be it emitting a signal or adding two ints together. Your design is just plainly wrong for the current computer architectures. Maybe try describing what is the ultimate effect you want to achieve and we'll help you find a good design for it.