MILL - C 并发控制库

MIT
C/C++
跨平台
2015-05-02
红薯

MILL 为 C 语言提供了 Go 语言风格的并发控制。

示例代码:

#include <stdio.h>
#include <mill.h>

void worker(int count, const char *text, chan ch) {
    int i;
    for(i = 0; i != count; ++i) {
        printf("%s\n", text);
        musleep(10000);
    }
    chs(ch, int, 0);
    chclose(ch);
}

int main() {

    chan ch1 = chmake(int, 0);
    go(worker(4, "a", chdup(ch1)));
    chan ch2 = chmake(int, 0);
    go(worker(2, "b", chdup(ch2)));

    choose {
    in(ch1, int, val):
        printf("coroutine 'a' have finished first!\n");
    in(ch2, int, val):
        printf("coroutine 'b' have finished first!\n");
    end
    }

    chclose(ch2);
    chclose(ch1);

    return 0;
}
加载中

评论(0)

暂无评论

暂无资讯

暂无讨论

翻转参数UIImageOrientation

typedef enum { UIImageOrientationUp, // default orientation 默认方向 UIImageOrientationDown, // 180 deg rotation 旋转180度 UIImageOrientationLeft, // 90 deg CCW 逆时针旋转90度 ...

2013/05/23 16:40
173
0
一些学习ios开发有用的网址

1,CocoaChina:http://www.cocoachina.com/ 2,Code4App:http://code4app.com/ 3,梦维:http://www.dreamingwish.com/ 4,open开源文档:http://www.open-open.com/doc/ 5,懒人ios:htt...

2013/05/27 17:17
789
0
关于sandbox文件管理

默认情况下,每个沙盒含有3个文件夹:Documents, Library 和 tmp。因为应用的沙盒机制,应用只能在几个目录下读写文件 Documents:苹果建议将程序中建立的或在程序中浏览到的文件数据保存在该...

2013/05/29 10:50
21
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部