나래온 간단잠금 다운로드 : http://www.delmadang.com/community/bbs_view.asp?bbsNo=21&bbsCat=0&st=&keyword=&indx=430350&keyword1=&keyword2=&page=1
뮤텍스는 프로세스끼리 통신 수단이라고 한다.
크리티컬 섹션은 반대로 한 프로세스 내의 쓰레드 끼리의 통신 수단이라고 하고...
어쨌든! 필자는 프로세스 중복을 확인할 때 이미 뮤텍스를 한 번 사용한 바가 있다. 사실 이 것은 뮤텍스를 알아서 사용한 것이 아니라 다른걸 참고하다 보니 그렇게 된 것이었다.
그런 상황에서 현재 뮤텍스를 다시 꺼내들 일이 생겼다. 진짜로 프로세스간 통신이 필요한 상황이 온 것이다.
그것은 바로 중복실행 시 메인폼을 켜는 일이다. 말하자면 네이트온이 켜져 있는 상황에서 다시 네이트온을 실행하면 네이트온이 두 개 켜지는 대신 이미 켜져있던 네이트온 창이 다시 뜨는 걸 구현하려 한 것이다.
뮤텍스는 사실 제대로 구현해야 하는 것 중 하나지만, 나는 뮤텍스를 잘 사용할 줄 모르기 때문에 다음과 같이 구현했다.(연한 청색 프로세스가 중복실행된 프로세스, 연녹색 프로세스가 원래 실행되고 있던 프로세스)
1. 중복 실행 확인 중 먼저 실행된 프로세스를 발견
2. ComLockerAppearMainForm 뮤텍스 생성
3. 원래 프로세스에서 저 뮤텍스를 발견
4. 메인 폼을 강조함
5. ComLockerReady 뮤텍스 생성
6. 처음 ComLockerAppearMainForm 뮤텍스를 생성한 프로세스에서 원조 프로세스의 ComLockerReady 뮤텍스 발견
7. 중복 실행된 프로세스 종료
'나래온 1기(~2012.6) > 나래온 간단잠금 개발과정' 카테고리의 다른 글
현황 보고 및 오늘 해결한 문제 2 - 이미지 경로 관련 문제 (0) | 2011.11.25 |
---|---|
오늘 해결한 문제 - 파일 접근 권한 관련 (0) | 2011.11.25 |
나래온 간단잠금에 대해서 델마당에 올린 글 (0) | 2011.11.25 |
오늘 구현한 부분들과 저작권 (0) | 2011.11.25 |
UI 디자인 완성 (0) | 2011.11.25 |