2010-05-22 2 views
2

다른 서브 시스템을 다른 서브 시스템에서 실행하는 것을 중지시키는 방법이 있습니까? 예를 들어다른 서브 시스템을 서브 시스템에있는 동안 실행하지 못하게하기

은 하위 CreateNumber()

과 잠수함에 설치

CreateNumber()
AddNumber처럼()
하는 deleteNumber은()

이 방법이 있나요 말하는 CreateNumber()에 있고 creaetNumber()가 완료된 후 AddNumber가 실행되지 않도록하는 함수를 호출합니까? 나는 단지 이벤트가 일어나기를 기다리기 위해 내 프로그램을 거기에 놓기를 원한다.

CreateNumber() 
WaitForSomeEventToHappen() 
AddNumber() 
DeleteNumber() 

당신이 스레드를 사용하지 않는 경우는, 다음이 잠수정은 단순히 순서대로 호출됩니다, 그래서 당신은 "영리"아무것도 할 필요가 없습니다 :

+0

여러 스레드를 실행하지 않는 한 한 번에 하나의 코드 만 실행됩니다. 여러 스레드를 실행중인 경우 해당 정보를 포함하도록 질문을 업데이트하십시오. –

답변

1

그냥 이렇게.

AddNumber()가 실행되는지 여부를 제어 할 수있는 CreateNumber를 원하면 Function으로 만들고 결과를 반환 할 수 있습니다.

Public Function CreateNumber() As Boolean 
    ...create the number... 

    if (numberCreatedOk) 
     return(True); 

    return(False); 
End Function 

다음과 같이 호출 :

if (CreateNumber()) then 
    AddNumber() 
    DeleteNumber() 
end if 

을 이러한 방법으로, CreateNumber()가 true를 반환하는 경우에만 남아있는 잠수정을 호출합니다.

+0

오, 정말 고마워요. – Bigfatty

관련 문제