Welcome to Our Website

파이썬 시간 사용.sleep()Method

이 튜토리얼에서는 파이썬 시간을 살펴 보겠습니다.수면()방법. 이전 자습서에서는 다양한 타이밍 작업을 수행하기위한 기본 유틸리티 라이브러리 인 시간 모듈을 살펴 보았습니다. 파이썬 시간.sleep()메서드는 주어진 시간 동안 현재 프로그램/스레드의 실행을 중지하는 데 사용됩니다.

현재 프로그램/스레드가 기본적으로 아무것도 하지 않 이 기간에,그래서 그것을”자는”그에 대한 양의 시간을 다시 시작하기 전에 그것의 현재 상태입니다.,

자는 방법을 살펴 우리는 이 기능을 사용할 수 있습니다.

파이썬 시간.sleep()사용법

이 함수는time모듈의 일부이므로 시간과 같은 점 표기법을 사용하여 호출합니다.수면(). 먼저 시간 모듈을 가져와야합니다.

import time

이제를 정지하는 프로그램의 실행,우리는 수를 지정해야의 초입니다.,

출력

Going to sleep for 5 secondsWoke up after 5 seconds

당신이 시도하는 경우 이 밖에서 귀하의 컴퓨터 프로그램이 중단 5 초간 사이에 두 개의 출력 이후,그것은 자는 시간입니다.

우리는 우리를 지정할 수도 있습니다 숫자의 초으로 부동 소수점 수 있습니다,그래서 우리는 잠0.001초(1 밀리초)또는0.0000001초(1 이크로초).

이 지연은 가능한 한 정확 내에서,부동 소수점계는 정밀한다.,

출력

Going to sleep for 2 millisecondsWoke up after 2 milliseconds

정확하게 측정 시간의 수면,우리가 사용할 수 있는time.time()방법을 시작하는 타이머입니다. 타이머의 시작 값과 종료 값의 차이는 우리의 실행 시간이 될 것입니다.

위의 프로그램에서 실제 수면 시간을 테스트 해 보겠습니다.

출력

Going to sleep for 2 millisecondsWoke up after 0.0020711421966552734 seconds

여기에,시간은 정확하지 않 2 밀리 초,당신이 볼 수 있습니다. 그것은 약2.071밀리 초,그것보다 약간 큽니다.,

이것은 일부에 지연을 할당하는 리소스 프로세스 스케줄링 등에서 운영 체제를 일으키는 원인이 될 수 있는 약간의 지연이다.

이 지연의 정도는 특정 시간 인스턴스에서 운영 체제의 정확한 상태를 모르기 때문에 다릅니다.

시간에 대한 가변 시간 지연.sleep()

어떤 이유로 든 다른 양의 지연을 원한다면 변수를time.sleep()로 전달할 수 있습니다.,

import timedelays = for delay in delays: print('Sleeping for', delay, 'seconds') time.sleep(delay)

출력

Sleeping for 1 secondsSleeping for 1.5 secondsSleeping for 2 seconds

이제는 우리가 덮여 사용하는time.sleep()를 위해 저희 프로그램,우리가 할 수 있는 동에 대한 스레드도.파이썬 시간을 사용하여

.잠()스레드에서

이것은 유용한 기능의 컨텍스트에서 멀티-스레딩로,여러 개의 스레드를 기다려야 할 수도 있습에 대한 특정한 리소스를 해제됩니다.

아래 스 니펫은 Pythontime.sleep()를 사용하여 여러 스레드를 대기시키고 출력을 인쇄 할 수있는 방법을 보여줍니다.,

출력

Starting Worker Thread....Worker Thread 0Starting Waiter Thread....Waiter thread 10Main thread finished!Worker Thread 1Waiter thread 11Worker Thread 2Waiter thread 12Worker Thread 3Waiter thread 13Waiter thread 14

여기에 실행하는 메인 스레드(프로그램)는 독립적 실행의 두 개의 스레드입니다. 그래서,우리의 주요 프로그램이 먼저 완료되기 전에,다음에는WorkerWaiter스레드입니다.

결론

이 문서에서,우리가 배운 것에 대해 사용하는 파이썬time.sleep()기능을 다양한 방법으로 전합니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다