php - 协程是什么?有什么应用场景
给我你的怀抱
给我你的怀抱 2017-05-16 13:10:47
0
2
746

如何理解协程,协程有什么应用场景
从鸟哥这看几个例子,我的理解是在函数使用yield,就会在那产生中断点,下次使用这个函数时就会从这个中断点开始运行,不过不知道我的理解对不对。。还有应用场景不知道是怎样的

给我你的怀抱
给我你的怀抱

모든 응답(2)
曾经蜡笔没有小新

프로세스, 스레드 및 코루틴 이해

黄舟

코루틴에 관해 가장 많이 읽을 수 있는 것은 "코루틴은 사용자 모드 스레드입니다"라는 문장입니다.

"사용자 모드 스레드"가 무엇인지 이해하려면 먼저 "커널 모드 스레드"가 무엇인지 이해해야 합니다. 커널 상태 스레드는 운영 체제에 의해 예약됩니다. 스레드 컨텍스트를 전환할 때는 먼저 이전 스레드의 컨텍스트를 저장한 후 다음 스레드를 실행해야 합니다. 조건이 충족되면 이전 스레드로 다시 전환하고 컨텍스트를 복원합니다. 사용자 모드 스레드가 운영 체제에 의해 예약되지 않고 프로그래머에 의해 사용자 모드에서 예약된다는 점을 제외하면 코루틴의 경우에도 마찬가지입니다.

yield这个关键字就是用来产生中断, 并保存当前的上下文的, 比如说程序的一段代码是访问远程服务器,那这个时候CPU就是空闲的,就用yield让出CPU,接着执行下一段的代码,如果下一段代码还是访问除CPU以外的其它资源,还可以调用yieldCPU를 계속 실행하여 비동기 코드를 동기 방식으로 작성할 수 있습니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!