Всем добрый день.
Я занимаюсь созданием на Kylix 2 Ent. кроссплатформенного ПО для VRG. Все создаваемое ПО должно быть многопоточным и работать асинхронно. Пришлось создать класс обеспечивающий потокобезопасное разруливание блокировок для чтения и записи, причем читать из любого расшаренного ресурса может одновременно множество потоков, а записывать, только один, и то, только поле того, как завершаться все читающие потоки, этакий аналог TMultiReadExclusiveWriteSynchronizer, но с поддержкой вложенных блокировок(может вкладываться несколько блокировока на чение и только одна на запись). Наткнулся на следующую проблему: В виндах скорость работы потоков в 1000 раз (да именно 10^3 раз) быстрее чем в линуксе. Вопрос: «Почему так и как это побороть?»
Дистрибутив: ALT Linux Master 2.0 (листемные либы не апдейтил) – ядро 2.4.18 (по умолчанию) Kylix 2 Enterprise установлен в папку обычного пользователя (не под рутом, поэтому либы не подменял)
Извините, если мой вопрос offtopic, но хотя бы подскажите где искать.
С уважением, Сергей