2008-06-15から1日間の記事一覧

共有メモリを使う

OSの差異はどうとでも吸収できそう。 #include <windows.h> #include <stdio.h> #include <stdlib.h> #define SHM_SIZE 256 #define die(fmt, ...) \ do { \ fprintf(stderr, fmt, __VA_ARGS__); \ exit(1); \ } while(0) int main() { HANDLE hShm; void *p; hShm = CreateFileMappingA((H</stdlib.h></stdio.h></windows.h>…

Fiberでコルーチン

RubyじゃなくてWindows APIのほう。 Unixだとノンプリエンティブなスレッドってどうやって使うんだろう? #include <windows.h> #include <stdio.h> #include <stdlib.h> #define die(fmt, ...) \ do { \ fprintf(stderr, fmt, __VA_ARGS__); \ exit(1); \ } while(0) void _stdcall fiber(</stdlib.h></stdio.h></windows.h>…