`
haoningabc
  • 浏览: 1477011 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

线程的helloworld

    博客分类:
  • c
c 
阅读更多
#include<stdio.h>
#include<stdlib.h>
#include<pthread.h>

pthread_t appId,bnaId,cryId;
int ret;
int status=1;
	
void apple(){
	while (1){
	if (status==1){
		status=2;
		printf("apple\n");
	}
	pthread_yield(bnaId,NULL);
}
}
void banana(){
while (1){
	if (status==2){
		status=3;
		printf("banana\n");
	}
	pthread_yield(cryId,NULL);
}
}
void cherry(){
while (1){
	if (status==3){
		status=1;
		printf("cherry\n");
	}
	pthread_yield(appId,NULL);
}
}
int main(){
	ret=pthread_create(&appId,NULL,(void*)apple,NULL);
	if (ret!=0){
		printf("Creat Apple pthread error!\n");
		exit(1);
	}
	ret=pthread_create(&bnaId,NULL,(void*)banana,NULL);
	if (ret!=0){
		printf("Creat Banana pthread error!\n");
		exit(1);
	}
	ret=pthread_create(&cryId,NULL,(void*)cherry,NULL);
	if (ret!=0){
		printf("Creat Cherry pthread error!\n");
		exit(1);
	}
	pthread_join(appId,NULL);
}

分享到:
评论

相关推荐

    多线程显示的三种不同方式显示hello world

    HelloWorld hello1 = new HelloWorld(); HelloWorld hello2 = new HelloWorld(); Thread thread1 = new Thread(hello1::printHello); Thread thread2 = new Thread(hello2::printHello); thread1.start(); ...

    java 入门 hello world

    java 入门 public class helloworld{ public static void main String[] args { System out println &quot;hello world&quot; ; } }

    JMX HelloWorld Download

    **标题解析:** "JMX HelloWorld Download" 指的是一个关于Java Management Extensions(JMX)的简单示例,可能是用于教学或演示如何在Java应用中使用JMX技术。"Download"表明这是一个可以下载的资源,可能包含了...

    最简单的委托与事件源代码(HelloWorld)

    本文将通过一个简单的"HelloWorld"示例,详细解析委托和事件的使用。 首先,我们来了解**委托**。在C#中,委托是一种类型,它类似于函数指针,可以引用具有相同签名的方法。委托允许我们将方法作为参数传递,或者...

    JNI-HelloWorld

    本示例“JNI-HelloWorld”就是关于如何使用JNI将Java与C语言结合,实现一个简单的“Hello, World!”程序。 首先,我们需要理解JNI的基本概念。JNI定义了一套接口和数据类型,使得Java代码能够声明本地方法(即非...

    hello world登陆界面

    在Android开发领域,"Hello World"登陆界面是一个非常基础且重要的起点,它是每个开发者入门时的第一个小程序。这个项目旨在帮助初学者理解Android应用程序的基本结构和登录功能的实现。在这个过程中,我们将探讨...

    miniGui的hello world

    5. **执行命令**:`make`命令将自动编译源代码并生成可执行文件,可以通过`./helloWorld`来运行程序。 通过这个简单的“hello world”程序,开发者可以了解MiniGUI的基本用法,包括窗口的创建、事件处理和图形绘制...

    androidNDK helloworld

    这个"androidNDK helloworld"资源就是一个入门级别的示例,旨在帮助初学者理解如何在Android项目中集成和使用NDK。下面将详细讲解Android NDK的基础知识以及如何创建并运行一个简单的"Hello, World!"程序。 首先,...

    QT4的HelloWorld程序

    QT4的HelloWorld程序是初学者接触QT框架的典型起点,它通过一个简单的应用程序展示了如何在QT环境中构建和运行代码。QT是一个流行的开源C++图形用户界面库,广泛用于开发跨平台的应用软件,包括Windows、Linux、Mac ...

    pthread的helloworld

    ### pthread的helloworld #### 知识点概览 1. **pthread库简介** 2. **线程创建函数`pthread_create()`详解** 3. **线程ID获取与使用:`pthread_self()`** 4. **线程函数参数传递** 5. **错误处理机制** 6. **代码...

    helloworld android代码

    在Android开发领域,"Hello World"是初学者入门的经典示例,它标志着开发者在构建安卓应用的旅程中迈出了第一步。这个例子旨在介绍基本的Android应用程序结构和生命周期,以及如何在屏幕上显示简单的文本。 首先,...

    helloworld

    【标题】"HelloWorld"是安卓开发中的一个经典例子,它代表了应用程序的起点,是初学者接触安卓编程时的第一个程序。这个简单的程序通常只显示一个包含“Hello, World!”文字的屏幕,帮助开发者理解基本的环境配置和...

    基于vs Qt写的简单hello world程序

    在向导中,指定项目名称为“helloworld”,选择合适的Qt版本和编译器。完成后,VS2015会自动生成一个基本的Qt GUI项目结构,其中包括`main.cpp`和`mainwindow.cpp`等文件。 在`mainwindow.ui`文件中,我们可以看到...

    TCP链接HelloWorld级程序

    本篇将深入解析基于.NET 2005下的C++编写的TCP服务器(Server)与客户端(Client)的"HelloWorld"级程序,帮助初学者理解TCP连接的基本原理和实现方式。 首先,TCP是一种面向连接的协议,这意味着在数据传输前,...

    笨鸟学Android开发(1):HelloWorld

    这个"HelloWorld"项目只是Android开发的冰山一角,后续你将学习更多,如Activity的生命周期、Intent的使用、UI组件的交互、数据存储、网络请求、多线程等。Android开发是一个深邃且广阔的领域,不断学习和实践,你将...

    多线程worker,AIR桌面版, HelloWorld(转)

    压缩包子文件的文件名“HelloWorld_Workers_For_Air.fxp”可能是一个AIR项目的文件,通常这种文件扩展名(.fxp)是Adobe Flash Professional导出的项目文件,包含了项目的所有资源、设置和源代码。开发者可以使用...

    OpenMP_HelloWorld

    然而,这个程序仅使用单个线程运行,因此只会输出一次“Hello World!”。 #### 三、启用OpenMP 为了使程序能够并行运行,我们需要启用OpenMP支持。这通常通过编译器选项来完成。例如,在IDE的项目属性面板中,可以...

    100-ways-to-print-HelloWorld-in-java-master_helloworld_

    这个名为 "100-ways-to-print-HelloWorld-in-java-master_helloworld_" 的项目显然是一个有趣的挑战,旨在探索使用Java语言打印 "Hello, World!" 的一百种不同方法。下面我们将深入探讨这个主题,详细介绍各种可能的...

    Java | hello world文本编译代码

    在创建`helloworld文本编译代码`中的文件时,你需要创建一个名为`HelloWorld.java`的文件。这个文件将包含我们的Java代码。 2. **编写Java代码**: 在`HelloWorld.java`文件中,你将看到以下内容: ```java ...

Global site tag (gtag.js) - Google Analytics