线程等待执行完毕

关于线程等待,有一个很好的例子,代码如下:

#include <stdio.h>
#include <pthread.h>
#include <unistd.h>
#include <time.h>
pthread_t tid ;
void *thread(void *arg)
{
	printf("1s\n");
	sleep(1);
	printf("2s\n");
	sleep(1);
	printf("3s\n");
	sleep(1);
}
int main(void)
{
	if(pthread_create(&tid,NULL,thread,NULL) < 0)
	{
		printf("create thread fair!\n") ;
	}
	printf("install update!\n");
	pthread_join(tid,NULL);
	printf("install update success!\n");
	return 0 ;
}

执行结果:
install update!

1s

2s

3s

install update success!

时间: 2024-10-21 17:05:22

线程等待执行完毕的相关文章

谁有多线程代码!!我想实现10个线程同时执行一个方法!

问题描述 我想10个线程同时执行一个方法,但是每个方法传入的参数是不一样的!我在网上找了些代码,但是不行,造成线程混乱,谁能教教我啊!!想要实现的是:10个线程同时去登陆网站,然后采集东西.当然我也有10个用户名.10个线程每个线程对应一个用户. 解决方案 解决方案二:分太少了.不然老夫贴出来解决方案三:ThreadPool.QueueUserWorkItem();解决方案四:给你个多线程的例子privatevoidbtnDataUp_Click(objectsender,RoutedEvent

Java多线程--让主线程等待所有子线程执行完毕在执行_java

朋友让我帮忙写个程序从文本文档中导入数据到oracle数据库中,技术上没有什么难度,文档的格式都是固定的只要对应数据库中的字段解析就行了,关键在于性能. 数据量很大百万条记录,因此考虑到要用多线程并发执行,在写的过程中又遇到问题,我想统计所有子进程执行完毕总共的耗时,在第一个子进程创建前记录当前时间用System.currentTimeMillis()在最后一个子进程结束后记录当前时间,两次一减得到的时间差即为总共的用时,代码如下  long tStart = System.currentTim

ios开发-iOS开发中,如和使等待block执行完毕后再执行下面的代码?

问题描述 iOS开发中,如和使等待block执行完毕后再执行下面的代码? int a = 0; void (^requestBlock)(NSDictionary *) = ^(int data){ a = data;//这里假设data = 1,那么a也要 = 1 }: NSLog(a); 这里的a永远是0,在有这段block的前提下,有什么办法让程序同步执行,也就是等待block执行完之后再执行下面的代码?这里只是的例子,我确实有这方面的需要. 解决方案 自己用信号量来同步 block后面w

WebBrowser让DocumentCompleted事件执行完毕后再往下执行

Q:WebBrowser如何让DocumentCompleted事件执行完毕后再往下执行? A:使用信号量,等待一下 System.Threading.AutoResetEvent obj = new System.Threading.AutoResetEvent(false); void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) ...{ obj.Set(); } p

java基本教程之java线程等待与java唤醒线程 java多线程教程_java

本章,会对线程等待/唤醒方法进行介绍.涉及到的内容包括:1. wait(), notify(), notifyAll()等方法介绍2. wait()和notify()3. wait(long timeout)和notify()4. wait() 和 notifyAll()5. 为什么notify(), wait()等函数定义在Object中,而不是Thread中 wait(), notify(), notifyAll()等方法介绍在Object.java中,定义了wait(), notify()

JDK5.0新特性系列---11.2线程 任务执行架构

  import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; import java.util.concurrent.ScheduledExecu

关于线程的执行和退出

线程由两部分构成: 线程内核对象:操作系统用它来对线程实施管理.内核对象也是系统用来存放线程统计信息的地方. 线程堆栈:它用于维护线程在执行代码时需要的所有函数参数和局部变量.   我们必需要知道一个事实 ----- 进程( WINDOWS 中)是不能被调度的.通常所说的调度,都是对线程而言的.进程仅仅是线程的容器,是系统统分配资源的单位. 这样,线程自身不会分配资源.同一进程中的多个线程共同使用它们父进程的资源.   一个进程至少需一个线程,如果一个进程中不存在线程(所有线程都退出).则系统认

PHP ajax 异步执行不等待执行结果的处理方法

  这篇文章主要介绍了PHP ajax 异步执行不等待执行结果的处理方法,本文直接给出实现代码,需要的朋友可以参考下 短地址生成应用中,要根据长地址生成网页快照,这个生成时间非瞬发,不可预估. 所以前台方面采用的方案一般为先展示生成的短地址,再定期AJAX轮查网页快照是否生成完毕. So,PHP代码这里做了如下处理: 代码如下: // 这边服务器采用的是phantomjs 来生成网页快照 $cd = '/home/emp/phpinstall/phantomjs-1.5.0/bin/phanto

JAVA实现线程等待提示框

Java语言从其诞生到现在不过短短五年时间,却已经成为全球最热门的语言,Java程序员正成为IT业其它程序员中薪金最高的职员.这一切都应归功于Java良好的特性:简单.面向对象.分布式.平台无关性.可移植性.支持多线程等等.本文将用Java的多线程特性来实现线程等待提示框. 1 问题的提出 在Java应用程序编程中,有时需要在GUI(图形化用户界面)中处理一些占用系统资源较多,耗费时间较长的事务,例如:与数据库进行大批量数据交换.大数据量的复杂运算.远程连接服务器等等.系统在处理这些事务时,如果