Hi can anyone explain about the synchronization objects
types and where we are using in the code.



Hi can anyone explain about the synchronization objects types and where we are using in the code...

Answer / nishant

CRITICAL_SECTION :- CRITICAL_SECTION (CS) objects are initialized and deleted but do not have handles and are not shared by other processes. A variable should be declared to be of type CRITICAL_SECTION. Threads enter and leave a CS, and only one thread at a time can be in a specific CS. EnterCriticalSection blocks a thread if another thread is in the section. The waiting thread unblocks when another thread executes LeaveCriticalSection. If a thread already owns the CS, it can enter again without blocking; that is, CRITICAL_SECTIONs are recursive. CRITICAL_SECTIONs have the advantage of not being kernel objects and are maintained in user space. This usually, but not always, provides performance improvements.

Mutex: - mutexes can be named and have handles, they can also be used for interprocess synchronization between threads in separate processes. Mutex objects are similar to CSs, but, in addition to being process-sharable, mutexes allow time-out values and become signaled when abandoned by a terminating process.A thread gains mutex ownership (or locks the mutex) by waiting on the mutex handle (WaitForSingleObject or WaitForMultipleObjects), and it releases ownership with ReleaseMutex.

Semaphore :- Semaphores maintain a count, and the semaphore object is signaled when the count is greater than 0. The semaphore object is unsignaled when the count is 0.

Event :- Events are used to signal other threads that some event, such as a message being available, has occurred.

Is This Answer Correct ?    3 Yes 0 No

Post New Answer

More MFC Interview Questions

if i modified data in 1 view how does the other view knows

2 Answers   Siemens,


How to find the mouse entering an image?..while entering need to display next image...

4 Answers  


1) How do you Destroy a Dialog Box ?

2 Answers   Honeywell,


What function is used to disable a control at runtime?

7 Answers  


What types of threads are supported by MFC framework?

2 Answers  


how to give colour for dialog button or static buuto?any one explain full code ?pls pls

3 Answers  


Difference between Cclint DC & Cpaint Dc

6 Answers   E Logic,


How can we create thread in MFC framework?

3 Answers  


Will there be any difference in the image buffer size if it is loaded in from CString to LPTSTR using GetBuffer()? lptstr = string.GetBuffer(0);

2 Answers  


1)does Frame Thickness in MFC?

1 Answers   winfoware,


Which CPrintInfo member variable must be set for multiple page printouts?

1 Answers  


Why not virtual functions to handle messages?

5 Answers  


Categories