summaryrefslogtreecommitdiffstats
path: root/src/libthread/tprimes.c
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-12-25 21:56:33 +0000
committerrsc <devnull@localhost>2004-12-25 21:56:33 +0000
commit1544f90960275dc9211bde30329c3258e0e1bf38 (patch)
treef55e7a73c03aaa24daa7cc2ad02822b921c477f9 /src/libthread/tprimes.c
parent7788fd54094693384ef5c92c475656dba8819feb (diff)
downloadplan9port-1544f90960275dc9211bde30329c3258e0e1bf38.tar.gz
plan9port-1544f90960275dc9211bde30329c3258e0e1bf38.zip
New thread library
Diffstat (limited to 'src/libthread/tprimes.c')
-rw-r--r--src/libthread/tprimes.c68
1 files changed, 0 insertions, 68 deletions
diff --git a/src/libthread/tprimes.c b/src/libthread/tprimes.c
deleted file mode 100644
index 89d30c03..00000000
--- a/src/libthread/tprimes.c
+++ /dev/null
@@ -1,68 +0,0 @@
-#include <u.h>
-#include <libc.h>
-#include <thread.h>
-
-enum
-{
- STACK = 8192
-};
-
-int quiet;
-int goal;
-int buffer;
-int (*fn)(void(*)(void*), void*, uint) = threadcreate;
-
-void
-primethread(void *arg)
-{
- Channel *c, *nc;
- int p, i;
-
- c = arg;
- p = recvul(c);
- if(p > goal)
- threadexitsall(nil);
- if(!quiet)
- print("%d\n", p);
- nc = chancreate(sizeof(ulong), buffer);
- (*fn)(primethread, nc, STACK);
- for(;;){
- i = recvul(c);
- if(i%p)
- sendul(nc, i);
- }
-}
-
-extern int _threaddebuglevel;
-
-void
-threadmain(int argc, char **argv)
-{
- int i;
- Channel *c;
-
- ARGBEGIN{
- case 'D':
- _threaddebuglevel = atoi(ARGF());
- break;
- case 'q':
- quiet = 1;
- break;
- case 'b':
- buffer = atoi(ARGF());
- break;
- case 'p':
- fn = proccreate;
- break;
- }ARGEND
-
- if(argc>0)
- goal = atoi(argv[0]);
- else
- goal = 100;
-
- c = chancreate(sizeof(ulong), buffer);
- (*fn)(primethread, c, STACK);
- for(i=2;; i++)
- sendul(c, i);
-}