Trong hướng dẫn này, chúng ta sẽ thảo luận về một chương trình để hiểu về coroutines trong C / C ++.
Coroutines là các hướng dẫn điều khiển chuyển đổi điều khiển thực thi giữa hai quy trình trả về bất kỳ quy trình nào trong số chúng.
Ví dụ
#include<stdio.h>
int range(int a, int b){
static long long int i;
static int state = 0;
switch (state){
case 0:
state = 1;
for (i = a; i < b; i++){
return i;
//returning control
case 1:; //resuming control
}
}
state = 0;
return 0;
}
int main(){
int i;
for (; i=range(1, 5);)
printf("control at main :%d\n", i);
return 0;
} Đầu ra
control at main :1 control at main :2 control at main :3 control at main :4