#include "u.h"
#include "libc.h"
#include "thread.h"

void
execproc(void *v)
{
	int i, fd[3];
	char buf[100], *args[3];

	i = (int)v;
	sprint(buf, "%d", i);
	fd[0] = dup(0, -1);
	fd[1] = dup(1, -1);
	fd[2] = dup(2, -1);
	args[0] = "echo";
	args[1] = buf;
	args[2] = nil;
	threadexec(nil, fd, args[0], args);
}
	
void
threadmain(int argc, char **argv)
{
	int i;
	Channel *c;
	Waitmsg *w;

	ARGBEGIN{
	case 'D':
		break;
	}ARGEND

	c = threadwaitchan();
	for(i=0;; i++){
		proccreate(execproc, (void*)i, 16384);
		w = recvp(c);
		if(w == nil)
			sysfatal("exec/recvp failed: %r");
	}
}
