2010-12-01 3 views
0

for 루프에 대해 n 개의 번호를 가진 c 프로그램이 있습니다. 얼마나 많은 프로세스와 하위 프로세스가이 프로그램을 위해 실행될 것인가?실행중인 프로세스의 수

답변

0

C 언어 자체는 다중 처리 프로그램을 지원하지 않습니다. OS에서 제공하는 API를 사용하여 다중 처리 버전을 구현해야합니다. Windows 환경에서 Linux 및 CreateProcess에서 fork 기능을 사용할 수 있으며 해당 플랫폼 종속 API는 이러한 기능 사용 방법에 대한 세부 정보를 제공 할 수 있습니다. 행운을 빕니다!

4

for 루프는 새로운 프로세스를 포크하지 않습니다. N 개의 for 루프는 단일 프로세스에서 실행되어야합니다.

1

포크를 만들지 않으면 프로세스가 하나만 있습니다. fork를 사용하면 코드를 표시하십시오.

0

편집 : 그냥 for 루프는 새로운 프로세스를 만들지 않으며 for 루프는 하나의 프로세스에서만 실행됩니다. Linux에서 새 프로세스를 만들려면 fork()을 사용하십시오. 포크()와 동일 작성하기 차례로 M^N 프로세스의 또 다른 바다를 만들 것입니다 M^N 프로세스 같은 것을 만들 것 M 번 반복하는 각 루프와 루프 N을 사용하여

내가 잘 기억한다면,

프로세스 등 ... 등. 시스템은 매우 느리게 진행될 수 있으며, MAX_PROCESS가 초과되면 fork()는 새로운 프로세스를 작성하지 않습니다.

첫 번째 프로세스는 M^N 하위 프로세스를 생성합니다. 그 아이들은 각각 M^N 하위 프로세스 등을 만들 것입니다 ...

달성하려는 것은 무엇입니까?

+0

각 반복마다'fork()'(또는'CreateProcess()')를하면 대답은 정확하지만 그렇게 말하지 않았습니다. –

+0

그래, 나는 (아마도 잘못된) 의견에 도달했다. – Muggen

+0

좋아, 아마도 더 관련성있는 답변으로 편집하십시오 : P. – Muggen

관련 문제