c语言多线程编程使用示例_C 语言

复制代码 代码如下:

#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>

#define THREAD_NUM 10

void *test(void *args) {
 printf("tid %d: i say 'Hello'.\n", args);
 return NULL;
}

int main() {
 int i, err;
 pthread_t child[THREAD_NUM];

 for(i = 0; i < THREAD_NUM; i++) {
  printf("Creating thread %d\n", i);
  err = pthread_create(&child[i], NULL, test, (void *) i);
  if(err) {
   printf("Can't create thread %d\n", i);
   exit(0);
  }
 }

 for(i = 0; i < THREAD_NUM; i++)
 pthread_join(child[i], NULL);

 printf("Thread initialize\n");
 return 0;
}

时间: 2024-11-13 07:35:08

c语言多线程编程使用示例_C 语言的相关文章

C语言编程中借助pthreads库进行多线程编程的示例_C 语言

运行之前需要做一些配置: 1.下载PTHREAD的WINDOWS开发包 pthreads-w32-2-4-0-release.exe(任何一个版本均可)    http://sourceware.org/pthreads-win32/ ,解压到一个目录. 2.找到include和lib文件夹,下面分别把它们添加到VC++6.0的头文件路径和静态链接库路径下面:    a).Tools->Options,选择Directory页面,然后在Show directories for:中选择Includ

C语言socket编程开发应用示例_C 语言

实现步骤: 1. Server端 复制代码 代码如下: #include <stdio.h>                   //用于printf等函数的调用#include <winsock2.h>                //Socket的函数调用 #pragma comment (lib, "ws2_32")      //C语言引用其他类库时,除了.h文件外,还要加入对应的lib文件(这个不同于C#) 复制代码 代码如下: int main()

VC多线程编程详解_C 语言

本文实例讲述了VC多线程编程概念与技巧,分享给大家供大家参考.具体分析如下: 一.多线程编程要点 线程是进程的一条执行路径,它包含独立的堆栈和CPU寄存器状态,每个线程共享所有的进程资源,包括打开的文件.信号标识及动态分配的内存等.一个进程内的所有线程使用同一个地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行以及什么时候执行线程.线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完后再执行.在多处理器的机器上,调度程序可将多个线程放到不同的处理器上去运行,这样可

c语言实现多线程动画程序示例_C 语言

该程序是利用opengl图形库与fmod音频库写的一个简单3d动画程序.该程序在vs下运行良好,若缺少相关dll文件请确认已配制fmod与opengl库. mixmodel.cpp 复制代码 代码如下: // mixmodel.cpp : 定义控制台应用程序的入口点.// #include "stdafx.h" //定义一个线程DWORD WINAPI SoundProc( LPVOID LPVIDEOPARAMETERS);//光照变量GLfloat  whiteLight[] =

简单的socket编程入门示例_C 语言

功能简单实现client输入内容发送到server端输出 复制代码 代码如下: #include <stdio.h>#include <iostream>#include <winsock2.h>#pragma comment(lib, "ws2_32.lib")using namespace std;int main() { // 初始化 Winsock. WSADATA wsaData; int iResult = WSAStartup( MAK

linux c多线程编程实例代码_C 语言

直接看代码吧,代码里有注释 复制代码 代码如下: #include <stdio.h>#include <stdlib.h>#include <string.h>#include <pthread.h>#include <time.h>#define MAX 3 int number =0;pthread_t id[2];pthread_mutex_t mut; //初始化静态互斥锁 void thread1(void){    int i;  

c语言strftime时间格式化示例_C 语言

函数原型: 复制代码 代码如下: size_t strftime (char* ptr, size_t maxsize, const char* format,const struct tm* timeptr ); 代码示例: 复制代码 代码如下: #include <stdio.h>#include <time.h> int main (){    time_t rawtime;    struct tm * timeinfo;    char buffer [128];    

利用c语言实现卷积码编码器示例_C 语言

实现(2, 1, 7)卷积码编码信息序列1001 1010 1111 1100生成序列g1 = 1011011;g2 = 1111001初始状态全0.以上参数可自行在main中修改. 复制代码 代码如下: /***This is an simple example program of convolutional encoder.   *The information sequence, the register initial states and the generation sequenc

c语言线程终止练习示例_C 语言

复制代码 代码如下: #include <stdio.h>#include <stdlib.h>#include <pthread.h> void *t1(void *args) { return (void *) 0;} void *t2(void *args) { printf("thread 2 param[args] = %d\n", args); pthread_exit((void *) 3);} void *t3(void *args)