testerror.c

来自「网络MPEG4IP流媒体开发源代码」· C语言 代码 · 共 55 行

C
55
字号
/* Simple test of the SDL threading code and error handling */#include <stdio.h>#include <stdlib.h>#include <signal.h>#include "SDL.h"#include "SDL_thread.h"static int alive = 0;int ThreadFunc(void *data){	/* Set the child thread error string */	SDL_SetError("Thread %s (%d) had a problem: %s",			(char *)data, SDL_ThreadID(), "nevermind");	while ( alive ) {		printf("Thread '%s' is alive!\n", (char *)data);		SDL_Delay(1*1000);	}	printf("Child thread error string: %s\n", SDL_GetError());	return(0);}int main(int argc, char *argv[]){	SDL_Thread *thread;	/* Load the SDL library */	if ( SDL_Init(0) < 0 ) {		fprintf(stderr, "Couldn't initialize SDL: %s\n",SDL_GetError());		exit(1);	}	atexit(SDL_Quit);	/* Set the error value for the main thread */	SDL_SetError("No worries");	alive = 1;	thread = SDL_CreateThread(ThreadFunc, "#1");	if ( thread == NULL ) {		fprintf(stderr, "Couldn't create thread: %s\n", SDL_GetError());		exit(1);	}	SDL_Delay(5*1000);	printf("Waiting for thread #1\n");	alive = 0;	SDL_WaitThread(thread, NULL);	printf("Main thread error string: %s\n", SDL_GetError());	return(0);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?