이벤트 루프 (예 : NodeJS)에서 차단 코드가 잘못되었다고 생각하지만 greenlets (녹색 스레드라고 생각하는)는 어떨까요? 차단 기능을 호출하는 코드를 실행하는 데 문제가 있습니까?미성년자 문제를 차단하고 있습니까?
답변
이 very primitive입니다 gevent에 의해 제공되는 이벤트 루프없이 자신을 Greenlets. 미성년자 만이 입출력 작업 및 스케쥴러에서 산출 할 수있는 기능이 없으므로 하나의 미성년자로부터 차단 호출은 모든 미성년자를 차단합니다. Gevent의 소켓 및 파일 IO에 대한 원숭이 패치는 일반적으로 데이터베이스 라이브러리가 파이썬으로 작성되고 소켓을 사용한다는 조건으로 데이터베이스와 함께 비 차단 IO를 활성화하는 데 충분합니다. 또는 직접 라이브러리를 패치 할 수도 있습니다.
다른 녹색 스레드가이 기능의 끝을 기다리고 있기 때문에 이벤트 루프를 차단하는 호출 기능은 물론 문제입니다.
그러나 Gevent을 사용하는 경우 차단 기능을 호출 할 수 있습니다. Gevent는 일반적인 파이썬 차단 기능을 패치합니다. 프로그램의 시작 부분이 쓰기 Gevent 모두 차단 기능을 패치합니다 :
from gevent import monkey monkey.patch_all()
녹색 스레드가 이벤트 루프와 같은 것이 아니라는 느낌이 들었습니다. 다른 모든 요청이 처리되는 것을 방지하기 때문에 이벤트 루프에서 코드를 호출하는 것이 문제가됩니다. 미성년자를 사용할 때 차단 코드를 호출하는 것이 데이터베이스 호출을 차단하는 것과 같은 문제인지 여부는 확실하지 않았습니다. 지렁이 원숭이 패치는 네트워킹 기능 만 차단합니다. – Matty
데이터베이스가 다릅니다. 1) 느린 db 요청과 동시 요청은 일반적으로 느립니다. 데이터베이스 처리량은 연결 수에 따라 곧 감소 할 수 있습니다. 2) 나쁨 또는 느린 네트워크 서버가 다른 빠른 서버에 대한 요청을 차단해서는 안됩니다. 네트워크 병렬 처리는 대개 처리량을 증가시킵니다. – hynekcer
- 1. RhodeCode - 내 연결을 차단하고 있습니까?
- 2. 함수 호출이 잘못된 디자인 프로세스를 차단하고 있습니까?
- 3. JQuery Ajax를 사용하여 게시물을 차단하고 있습니까?
- 4. 자바 selector.select()가 스레드를 차단하고 있습니까?
- 5. FragmentTransaction을 차단하고 취소 할 수 있습니까
- 6. 소켓을 차단하고 select를 선택하십시오.
- 7. SMS를 차단하고 전화를 걸려면 어떻게해야합니까?
- 8. GestureOverlayView가 터치 이벤트를 차단하고 있습니다.
- 9. DatagramPacket.getAddress(). getHostName()이 내 스레드를 차단하고 있습니다.
- 10. 이메일을 차단하고 차단하는 방법은 무엇입니까?
- 11. ui 헤더가 div를 차단하고 있습니다.
- 12. AlarmManager가 메인 스레드를 차단하고 있습니다.
- 13. 스레드를 차단하고 다시 시작하는 방법
- 14. NSOperationqueue 메인 스레드를 차단하고 싶습니다.
- 15. 모든 리디렉션을 차단하고 새 창/팝업에서 내용을 열 수 있습니까?
- 16. 차단하고 서버와 사용자 입력에 권한을 부여하는 방법
- 17. Robots.txt가 google에서 wordpress 사이트를 차단하고 있습니다
- 18. 도달 가능성 코드가 메인 스레드를 차단하고 있습니다.
- 19. 접촉을 차단하고 종료 방법을 터치하는 방법?
- 20. SQLite는이 문제를 해결할 수 있습니까?
- 21. 누구나이 문제를 해결할 수 있습니까?
- 22. MNBottomPulltorefresh가 호 문제를 만들고 있습니까?
- 23. 어떻게이 문제를 해결할 수 있습니까?
- 24. 문제를 일으키는 리소스 참조가 있습니까?
- 25. 코드를 차단하고 이벤트 처리기가 작동하기를 기다리시겠습니까?
- 26. Firefox가 SSL을 차단하고 다른 모든 브라우저에서 작동합니다.
- 27. Internet Explorer 8이 CSS, JQuery를 차단하고 있습니다.
- 28. Adblock이 iframe 리디렉션을 차단하고 있습니다 - 어떻게 감지합니까?
- 29. iframe 태그가 페이지의 다른 내용을 차단하고 있습니다.
- 30. 모든 WordPress 쿼리를 차단하고 범주로 제한하는 방법?
귀하의 예제는 죽은 링크입니다. 고쳐 주시겠습니까? 감사! – dionyziz
팔로 인한 다운 투표가 확실하지 않지만 괜찮습니다. – philofinfinitejest