Доброго времени суток, всё знающий All! Вот есть кусок кода который работает под freebsd и win32: void set_int (u_int* target, u_int value) { #ifdef WIN32 InterlockedExchange((LONG *)target, value); #else atomic_readandclear_int(target); atomic_set_int(target,value); #endif } void set_char (u_char* target, u_char value) { #ifdef WIN32 *target = value; #else atomic_readandclear_char(target); atomic_set_char(target,value); #endif } Как это можно портировать под Linux? Под Linux'ом нет функций таких. Или я плохо смотрел. Спасибо. С уважением, Денис.