2014-01-29 3 views
1

나는 초보자입니다. C에서 타이머 스레드를 구현해야합니다. 타임 아웃시 일부 작업을 수행하기 위해 다른 스레드/함수로 이동해야합니다. 누구든지 SIGALRM을 사용하여 구현할 수 있습니까? 누군가가 여기에 몇 가지 예를 남길 수 있다면 좋을 것입니다.SIGALRM을 사용하는 c의 타이머 스레드

+1

스택 오버 플로우에 오신 것을 환영합니다! 우리가 당신을 위해 몇 가지 코드를 작성하기를 원하는 것처럼 보입니다. 대부분의 사용자는 곤경에 처한 코더 코드를 기꺼이 만들지 만 일반적으로 포스터가 이미 문제를 해결하려고 시도했을 때만 도움이됩니다. 이러한 노력을 입증하는 좋은 방법은 지금까지 작성한 코드, 예제 입력 (있는 경우), 예상 출력 및 실제로 얻은 출력 (콘솔 출력, 스택 추적, 컴파일러 오류 등)을 포함시키는 것입니다. 응용할 수 있는). 귀하가 제공하는 상세 정보가 많을수록 더 많은 답변을받을 수 있습니다. – kkuilla

+0

'pthread_sigmask()'로 이동 : http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_sigmask.html 및'setitimer()': http://pubs.opengroup.org/onlinepubs/9699919799/functions /getitimer.html – alk

+0

@kkuilla 나는 당신이 나를 위해 코드를 작성하는 것을 원하지 않는다. 나는 이것을 할 수있는 방법이 있는지 누군가에게만 알려줄 것을 기대하고 있었다. 그렇다면 어떻게 작동하는지. 귀하의 의견에 감사드립니다. 나는 더 이상의 논의를 위해 그들을 명심 할 것이다. –

답변

0
.. 사람이 .. 은 어쨌든 튜토리얼의 일부를 heres 링크 그것을 ..read 몇 가지 코드를 생성 U 않고, U 도움이 될 것 같아요

signal(SIGALRM, TR69_DM_SignalHandler); alarm(PassedFromCaller->TimeOut); pause();

나는이 작업을 발견 ..하지만 t이다 여기에 어떤 식 으로든 나는 일시 정지 진술을 피할 수 있을까 ?? 내 스레드가 계속 작업하기를 원합니다. 다른 스레드에서 알람을 울리게해야합니까?