I found this old post of yours
http://www.alteraforum.com/forum/showthread.php?t=28275 If this actually is the code you refer to, I'm concerned about a particular situation that will eventually happen after a while:
Because of task priorities it is possible that both high priority tasks repost the semaphore between the OSSemPost and the next OSSemPend of the low priority one. This will happen whenever the scheduler is activated exactly between the to instructions.
I'm not sure, but I think such a situation could generate anomalies in the normal flow.
As someone pointed out there, I think cout is not thread safe, if you still use it. Moreover, if you use jtag uart as standard output, I guess the interface would get stuck after some time, because of lot of print data under fast task switching