Plan 9 from User Space's /usr/local/plan9/9pm/src/cmd/testlock.c

#include <9pm/u.h>
#include <9pm/libc.h>

void
main(int argc, char **argv)
{
	Lock lk;

	USED(argc);
	USED(argv);

	memset(&lk, 0, sizeof lk);
	lock(&lk);
	assert(!canlock(&lk));
	unlock(&lk);
	assert(canlock(&lk));
	print("so far so good; this should hang here\n");
	lock(&lk);
	assert(0);
}

Space Glenda

Copyright © 2005 Lucent Technologies, Russ Cox, MIT.
See license for details.