вторник, 8 июня 2010 г.

Race condition

типа код:


dbthread->start();
AutoMutex am( globalMutex );
am->lock(); // Wait while db load's data

чистая иллюстрация race condition
затея была такая в потоке БД захватывается глобальный мутекс
и
все остальное стоит , пока БД не подгрузит данные
но поток БД в половине случаев походу вытеснялся и то что после старт выполнялось РАНЕЕ
и соотв мутекс захватывал основной тред
ы

Комментариев нет:

Отправить комментарий