반응형
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Var:=식
- if(식)
- EnvSub
- SetKeyDelay
- Threads
- if
- EnvMult
- 배열
- Menu
- SetTitleMatchMode
- autohotkey
- IfWinExist
- SetControlDelay
- 함수
- SetEnv
- StringGetPos
- API
- SetMouseDelay
- Blocks
- EnvDiv
- EnvAdd
- IfInString
- IF (식)
- ControlGetText
- MouseClick
- 식
- EnvSet
- 식의 설명
- DetectHiddenWindows
- ControlSend
Archives
- Today
- Total
ㄴrㅎnㅂrㄹrㄱi
ReleaseMutex 본문
반응형
ReleaseMutex
지정된 뮤텍스 오브젝트의 소유권을 해방합니다.
BOOL ReleaseMutex( HANDLE hMutex // 뮤텍스의 핸들 );
KERNEL32.DLL
인수
- hMutex
-
뮤텍스 오브젝트의 핸들을 지정합니다.이 핸들은 CreateMutex 함수 또는 OpenMutex 함수에 의해서 돌려주어집니다.
반환값
성공하면 0 이외의 값이 돌아갑니다.
실패하면 0 하지만 돌아갑니다.확장 에러 정보를 취득하려면 , GetLastError 함수를 사용합니다.
해설
호출 스렛드가 지정된 뮤텍스 오브젝트를 소유하고 있지 않는 경우는, 이 함수는 실패합니다.
스렛드는 WaitForSingleObject 함수등의 대기 함수를 호출할 때에 뮤텍스 오브젝트의 핸들을 지정하는 것으로, 뮤텍스 오브젝트의 소유권을 획득할 수 있습니다.이 때, 지정된 뮤텍스 오브젝트가 다른 스렛드에 소유되고 있을 때는, 그 스렛드가 뮤텍스 오브젝트를 해방할 때까지 스렛드의 실행이 정지됩니다.
뮤텍스 오브젝트를 소유하는 스렛드는, 이미 그 오브젝트를 소유할 필요가 없어졌을 때에 ReleaseMutex 함수를 호출해 소유권을 해방하지 않으면 안됩니다.
뮤텍스 오브젝트를 소유하고 있는 스렛드는, 대기 함수에 같은 뮤텍스 오브젝트를 지정할 수 있습니다.이 때, 스렛드의 실행은 정지되지 않습니다.스렛드가 대기 함수를 호출할 때마다 내부의 뮤텍스의 재귀 카운터가 인크리먼트(increment) 됩니다.스렛드가 ReleaseMutex 함수를 호출할 때마다 재귀 카운터는 감소 되어 카운터가 0 (이)가 된 시점에서 뮤텍스의 소유권이 해방됩니다.
대응 정보
Windows 95 이후 / Windows NT 3.1 이후
반응형
'API 관련 > Win32 API 함수' 카테고리의 다른 글
ScreenToClient (0) | 2007.11.08 |
---|---|
RemoveMenu (0) | 2007.11.08 |
ReleaseDC (0) | 2007.11.08 |
RegSetValueEx(A) (0) | 2007.11.08 |
RegQueryValueEx(A) (0) | 2007.11.08 |
Comments