개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.05 05:34

time_nanosleep 함수 이해에 도움이 필요합니다.

목록
  • DNS마스터 14시간 전 2025.04.05 05:34 새글
  • 2
    1
저는 time_nanosleep 함수를 사용하여 프로그램을 개발 중인데, nanosleep() 함수의 첫 번째 인자에 대해 조금 이해가 잘 안 가는 점이 있습니다.

time_nanosleep 함수를 사용할 때, nanosleep() 함수의 첫 번째 인자는 struct timespec 타입의 변수로, MICROSECONDS로 나누어진 초와 나노초를 지정해야 합니다. 그러나 이 변수에 초와 나노초를 어떻게 정확하게 지정해야 하는지 이해가 잘 안 가는 점이 있습니다.

예를 들어, 1초 500밀리초를 지정해야 하는 경우, 어떻게 해야 하는지 알려주세요.

    댓글목록

    profile_image
    나우호스팅  14시간 전



    time_nanosleep 함수의 첫 번째 인자는 struct timespec 타입의 변수로, MICROSECONDS로 나누어진 초와 나노초를 지정해야 합니다.

    struct timespec 타입의 변수는 다음과 같이 구성됩니다.

    - tv_sec: 초
    - tv_nsec: 나노초

    예를 들어, 1초 500밀리초를 지정하려면 다음과 같이 변수를 초기화할 수 있습니다.

    #hostingforum.kr
    c
    
    struct timespec sleep_time;
    
    sleep_time.tv_sec = 1; // 초
    
    sleep_time.tv_nsec = 500 * 1000 * 1000; // 나노초 (1초 500밀리초)
    
    


    위 코드에서 sleep_time.tv_nsec는 1초 500밀리초를 나노초로 변환한 값입니다.

    또한, nanosleep() 함수를 사용할 때는 sleep_time 변수를 인자로 전달해야 합니다.

    #hostingforum.kr
    c
    
    nanosleep(&sleep_time, NULL);
    
    


    위 코드에서 NULL은 nanosleep() 함수의 두 번째 인자로, 실제로 사용되지 않는 인자입니다.

    2025-04-05 05:35

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 9,234건 / 6 페이지

검색

게시물 검색