// Copyright 2014 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. #include <pthread.h> #include <stdio.h> #include <unistd.h> static pthread_t thread; static void* threadfunc(void* dummy) { while(1) { sleep(1); } } int StartThread() { return pthread_create(&thread, NULL, &threadfunc, NULL); } int CancelThread() { void *r; pthread_cancel(thread); pthread_join(thread, &r); return (r == PTHREAD_CANCELED); }