Device Manage for OS/2

DevCon for OS/2 - Developer Connection

Operating systems:
ArcaOS, eComStation, IBM OS/2 Warp
Мифы о eComStation 

(Unsorted)  
 
 
Compilers  
 
 
Tools  
 
 
User Interface  
 
 
REXX  
 
 
Drivers/kernel  
 
 

 

 

WinRequestMutexSem()

Классический дидлок - это два мютекса, захват которых производится в разных нитках в разном порядке. Будет проблема. Выход - всегда захватывать в одном порядке. Но вот проблема, использование WinSendMsg как бы добавляет второй неявный мютекс, т.е. если между захватом и освобождением мютексов юзается WinSendMsg, то тут порядок такой - захват мютекса, потом захват неявного мютекса очереди, а если вызов произошел из обработчика очереди - то сначала захват мютекса очереди, потом захват мютекса нужного ресурса. классический дидлок

Конечно, если между захватами нету сендов, то не страшно. Но кто в большой программе сможет такое гарантировать? WinRequestMutexSem пытается захватить укзанный мютекс, не захватывая очередь. Т.е. если еще одна нитка сделает send - он пройдет. Только post будет накапливаться. Работает он с той же скоростью что и обычный.

Вывод - во всех PM апликухах от греха подальше заменить DosRequestMutexSem на WinRequestMutexSem.

(thx Glassman)

 


 

 

ArcaOS 5.1.1 что нового? - PNG иконки

Теперь PNG иконки на рабочем столе (вместо древних .ico 1994-го года)

Что нового?

Blonde Guy

eComStation разработчик

eCo Software была ведущим разработчиком модулей для eComStation 2.0

// надо на ENG!!

Buy eSchemes

 

Каждая конференция влияет на будущее OS/2. Люди готовили доклады несколько месяцев, потратили деньги на поездку в другой город или другую страну.

Конференция даёт импульс сообществу на несколько месяцев вперёд. Результаты встречи обсуждаются в сообществе еще несколько недель.

Warpstock Europe 2011

Интервью с Alex Taylor

 

(C) OS2.GURU 2001 -- 2025