Господа помогите плз!
Может кто сталкивался. Есть программка, вот ссылка на нее http://www.stargazer.dp.ua/download/tq.tgz
В программке два потока, один пишет в очередь сообщений, другой читает. Пишущий процесс работает в несколько раз быстрее читающего. Это приводит к тому, что через некоторое время очередь полностью заполняется. После этого пишущий процесс может добавлять в очередь новое сообщение после того, как читающий освободит место в очереди. Короче происходит синхронизация, и пишущий и чиатющий поток работают на одной скорости. Всё пучком.
Однако, на FreeBSD эта же программка работает совсем по другому, при заполнении очереди блокируется не просто пишущий поток, а весь процесс, т.е. и пишущий и читающий процессы. Грубо говоря программа зависает.
Кто знает в чем дело и возможно ли это побороть?
PS: Компилится прога Linux: make -f make.lin FreeBSD: make -f make.bsd