Здравствуйте Flamer, Вы писали:
F>Здравствуйте BlackBox, Вы писали:
[skip]
F>1. Уберите от греха __fastcall. Тогда класс можно будет использовать в средах, отличных от Borland C++ Builder
.
ok

[skip]
F>CBlackMutex::CBlackMutex(unsigned int sz) // добавил unsigned
F>{
F> // если unsigned, то проверку можно убрать
F>// if (sz <= 0) sz = 1;
Спасибо, как то не думал об этом.
F> Size = sz;
F> ResCount = 0;
F> hEvents[0] = hEvents[1] = NULL;
F> hEvents[0] = CreateEvent(NULL, FALSE, FALSE, NULL);
F> hEvents[1] = CreateEvent(NULL, FALSE, FALSE, NULL);
F>}
F>CBlackMutex::~CBlackMutex()
F>{
F>// Тут я немножко подрезал код... И так все ясно, без != NULL
Дело привычки
F>// if (hEvents[0] != NULL) CloseHandle(hEvents[0]);
F>// if (hEvents[1] != NULL) CloseHandle(hEvents[1]);
F> if ( hEvents[0] ) CloseHandle(hEvents[0]);
F> if ( hEvents[1] ) CloseHandle(hEvents[1]);
F>// это зачем???
F>// hEvents[0] = hEvents[1] = NULL;
Это у меня параноя такая. Зачем делаю сам не знаю. Но делаю...
F>}
[skip]
F>Вот, в общем... Сами просили
А по поводу GetOpened & GetEmpty???
Да и вообще такая штука нужна кому-нибудь?