실행 루프에 대한 동기 및 비동기 입력 소스의 차이점은 무엇입니까?

오마르 하산

포트와 같은 입력 소스가 이벤트를 실행 루프 비동기로 전달하는 반면 타이머가 이벤트를 동 기적으로 전달한다는 것은 무엇을 의미합니까?

타이머가 스레드를 차단합니까?

Rob

스레딩 프로그래밍 가이드 : 실행 루프는 말합니다 :

런 루프는 두 가지 유형의 소스에서 이벤트를 수신합니다. 입력 소스 는 일반적으로 다른 스레드 또는 다른 응용 프로그램의 메시지와 같은 비동기 이벤트를 전달합니다. 타이머 소스 는 예약 된 시간 또는 반복 간격으로 발생하는 동기 이벤트를 제공합니다. 두 유형의 소스 모두 애플리케이션 별 핸들러 루틴을 사용하여 이벤트가 도착하면 처리합니다.

그러나 타이머는 타이머의 클로저 또는 선택기 메서드가 실행되는 동안에 만 스레드를 차단합니다. 그러나 그로부터 돌아 오자마자 스레드는 더 이상 차단되지 않습니다. 따라서 가능한 한 빨리 들어오고 나가도록하십시오.

예를 들어 타이머가 10 초 안에 실행되도록 예약하고 타이머 처리 종료 / 선택기의 코드를 실행하는 데 100msec가 걸리면 스레드는 타이머가 실행될 때까지 차단되지 않고 100msec 동안 만 차단됩니다. 반복 타이머와 동일합니다.

결론적으로, 타이머 핸들러에서 계산 비용이 너무 많이 드는 일을하지 않는 한 걱정할 필요가 없습니다. 그리고 물질적 시간 동안 차단할 수있는 작업을 수행해야하는 경우 타이머 핸들러가 관련 코드를 일부 백그라운드 큐에 비동기식으로 디스패치하거나 백그라운드 큐에서 직접 실행되도록 GCD 타이머를 예약하여 Timer모두 우회 합니다. .

그러나 대부분의 Timer사용 사례에서 이것은 문제가되지 않습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

동안 (사실) 및 대기 () 또는 스레드 사이의 차이점은 무엇입니까 가입 ()

분류에서Dev

`| _ |의 차이점은 무엇입니까? 비동기 이동 {}`및`비동기 이동 | _ | {}`

분류에서Dev

동기화 및 정적 동기화의 차이점은 무엇입니까

분류에서Dev

setInterval node.js의 비동기 및 동기화 func의 차이점은 무엇입니까?

분류에서Dev

카산드라에서 행 키, 기본 키 및 인덱스의 차이점은 무엇입니까?

분류에서Dev

비동기 블록의 차이점은 무엇입니까?

분류에서Dev

이 두 루비 기능의 차이점은 무엇입니까?

분류에서Dev

for 루프의 비동기가 실행 시간을 개선하지 않는 이유는 무엇입니까?

분류에서Dev

.NET의 작동 차이점은 무엇입니까? 및 ^ 및 ^ (. *) $?

분류에서Dev

데몬, 서비스 및 프로세스의 기술적 차이점은 무엇입니까?

분류에서Dev

데몬, 서비스 및 프로세스의 기술적 차이점은 무엇입니까?

분류에서Dev

자바 스크립트에서 x 기간 동안 루프 대기 코드 실행을 만드는 방법은 무엇입니까?

분류에서Dev

fgets ()에서 더 많은 입력을 기다리는 대신 while 루프가 무한히 실행되는 이유는 무엇입니까?

분류에서Dev

CSS에서 초기 및 기본값의 차이점은 무엇입니까?

분류에서Dev

유닉스에서 ps -www 및 ps 명령에 대한 출력의 차이점은 무엇입니까

분류에서Dev

출력 및 명령을 그룹화하기 위해 bash에서 ()와 {}의 차이점은 무엇입니까

분류에서Dev

루프에서 비동기 코드를 실행하는 방법은 무엇입니까?

분류에서Dev

동일한 XML 및 XSD 파일에 대한 DOMDocument :: schemaValidate ()의 실행 시간이 평소보다 훨씬 더 긴 이유는 무엇입니까?

분류에서Dev

Kestrel 프로세스에서 매일 비동기 작업을 실행하는 방법은 무엇입니까?

분류에서Dev

할당 기호 =, : = 및 <-의 차이점은 무엇입니까?

분류에서Dev

jQuery의 window.onload (function () {}) 및 $ (document) .ready (function () {})에 대한 meteor js의 동등한 기능은 무엇입니까?

분류에서Dev

subprocess.Popen () 사용과 수동으로 쉘에서 명령 실행의 차이점은 무엇입니까?

분류에서Dev

기본 및 일반 타이프 스크립트 내보내기의 차이점은 무엇입니까?

분류에서Dev

비동기 작업을 기다리지 * 않는 * 경우에 대한 표준 JS 관행은 무엇입니까?

분류에서Dev

BERT의 변압기 인코더 및 디코더에 대한 입력은 무엇입니까?

분류에서Dev

표보기에서 셀과 행의 차이점은 무엇입니까?

분류에서Dev

각 Jest 테스트 케이스에 대해 비동기 API 호출을 다시 실행하지 않는 방법은 무엇입니까?

분류에서Dev

wxWidgets에서 대화 상자 기반 및 프레임 기반 응용 프로그램의 차이점은 무엇입니까

분류에서Dev

비 차단 네이티브 핸들을 수동으로 구동하기위한 가장 기본적인 Asio 실행 컨텍스트는 무엇입니까?

Related 관련 기사

  1. 1

    동안 (사실) 및 대기 () 또는 스레드 사이의 차이점은 무엇입니까 가입 ()

  2. 2

    `| _ |의 차이점은 무엇입니까? 비동기 이동 {}`및`비동기 이동 | _ | {}`

  3. 3

    동기화 및 정적 동기화의 차이점은 무엇입니까

  4. 4

    setInterval node.js의 비동기 및 동기화 func의 차이점은 무엇입니까?

  5. 5

    카산드라에서 행 키, 기본 키 및 인덱스의 차이점은 무엇입니까?

  6. 6

    비동기 블록의 차이점은 무엇입니까?

  7. 7

    이 두 루비 기능의 차이점은 무엇입니까?

  8. 8

    for 루프의 비동기가 실행 시간을 개선하지 않는 이유는 무엇입니까?

  9. 9

    .NET의 작동 차이점은 무엇입니까? 및 ^ 및 ^ (. *) $?

  10. 10

    데몬, 서비스 및 프로세스의 기술적 차이점은 무엇입니까?

  11. 11

    데몬, 서비스 및 프로세스의 기술적 차이점은 무엇입니까?

  12. 12

    자바 스크립트에서 x 기간 동안 루프 대기 코드 실행을 만드는 방법은 무엇입니까?

  13. 13

    fgets ()에서 더 많은 입력을 기다리는 대신 while 루프가 무한히 실행되는 이유는 무엇입니까?

  14. 14

    CSS에서 초기 및 기본값의 차이점은 무엇입니까?

  15. 15

    유닉스에서 ps -www 및 ps 명령에 대한 출력의 차이점은 무엇입니까

  16. 16

    출력 및 명령을 그룹화하기 위해 bash에서 ()와 {}의 차이점은 무엇입니까

  17. 17

    루프에서 비동기 코드를 실행하는 방법은 무엇입니까?

  18. 18

    동일한 XML 및 XSD 파일에 대한 DOMDocument :: schemaValidate ()의 실행 시간이 평소보다 훨씬 더 긴 이유는 무엇입니까?

  19. 19

    Kestrel 프로세스에서 매일 비동기 작업을 실행하는 방법은 무엇입니까?

  20. 20

    할당 기호 =, : = 및 <-의 차이점은 무엇입니까?

  21. 21

    jQuery의 window.onload (function () {}) 및 $ (document) .ready (function () {})에 대한 meteor js의 동등한 기능은 무엇입니까?

  22. 22

    subprocess.Popen () 사용과 수동으로 쉘에서 명령 실행의 차이점은 무엇입니까?

  23. 23

    기본 및 일반 타이프 스크립트 내보내기의 차이점은 무엇입니까?

  24. 24

    비동기 작업을 기다리지 * 않는 * 경우에 대한 표준 JS 관행은 무엇입니까?

  25. 25

    BERT의 변압기 인코더 및 디코더에 대한 입력은 무엇입니까?

  26. 26

    표보기에서 셀과 행의 차이점은 무엇입니까?

  27. 27

    각 Jest 테스트 케이스에 대해 비동기 API 호출을 다시 실행하지 않는 방법은 무엇입니까?

  28. 28

    wxWidgets에서 대화 상자 기반 및 프레임 기반 응용 프로그램의 차이점은 무엇입니까

  29. 29

    비 차단 네이티브 핸들을 수동으로 구동하기위한 가장 기본적인 Asio 실행 컨텍스트는 무엇입니까?

뜨겁다태그

보관