• LF몰 이벤트
  • 파일시티 이벤트
  • 캠퍼스북
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

세마포어를 이용한 프로그램

*대*
최초 등록일
2005.09.17
최종 저작일
2005.09
파일확장자 압축파일
가격 1,500원 할인쿠폰받기
다운로드
장바구니

소개글

고속도로 톨게이트를 통과할 때 한대의 차량만이 통과한다는 것을 우리는 알고 있습니다.
이것을 semaphore에 적용해보면 우리가 일반적으로 생각한대로 한대의 차량만이 나가지만, semaphore를 적용하지 않은 프로그램은 모든 차량이 한꺼번에 통과를 해서 우리가 생각한 결과와는 전혀 다르게 나옵니다.
그래서 저는 이것을 semaphore를 적용한 것과 적용하지 않았을 때를 프로그램으로 작성하였으니 참고하세요..

컴파일 실행환경

visual studio에서 실행하시면 됩니다.
실행시키면 Yes/No선택이 나오게 되는데
Yes일 경우 semaphore를 이용한 결과가 나오고
No일 경우 semaphore를 이용하지 않은 결과가 나옵니다.

본문내용

#include <windows.h>
#include <stdio.h>
#include<time.h>

#define Time 1000
HANDLE hSemaphore;
bool NowTolgateUse;
int SemUse = 1, AnotherCar = 1;
char Name[10][10]={"소나타", "옵티마", "그랜져", "마티즈", "코란도", "아반때", "티 코", "아우디","싼타페","에쿠스"};
int YesNoCheck(char);
clock_t start, end;

DWORD WINAPI UseTolgate1(LPVOID arg)
{
DWORD dwThreadId = GetCurrentThreadId();
start=clock();

printf("%s가 톨게이트에 들어가려고 대기중 입니다.\n",Name[0]);
if(SemUse)
{
WaitForSingleObject( hSemaphore, INFINITE);
//지정된 오브젝트가 신호상태에 있거나 타임아웃 인터벌경과일때 반환한다.
//INFINTE로 지정한다면 함수의 타임아웃 간격은 결코 경과하지 않는다
}
Sleep(Time);

printf("%s가 톨게이트에 들어가려고 시도합니다.\n",Name[0]);

압축파일 내 파일목록

Semaphore2.dsp
Semaphore2.ncb
Semaphore2.plg
Semaphore2.cpp
Semaphore2.dsw
Semaphore2.opt
Debug/vc60.idb
Debug/vc60.pdb
Debug/Semaphore2.pch
Debug/Semaphore2.obj
Debug/Semaphore2.ilk
Debug/Semaphore2.exe
Debug/Semaphore2.pdb

참고 자료

없음
*대*
판매자 유형Bronze개인

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
세마포어를 이용한 프로그램
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업