[发明专利]多线程启动方法无效

专利信息
申请号: 201010001510.2 申请日: 2010-01-04
公开(公告)号: CN102117222A 公开(公告)日: 2011-07-06
发明(设计)人: 薛永胜 申请(专利权)人: 朗讯科技公司
主分类号: G06F9/48 分类号: G06F9/48
代理公司: 中科专利商标代理有限责任公司 11021 代理人: 王波波
地址: 美国新泽西州茉莉山*** 国省代码: 美国;US
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 多线程 启动 方法
【说明书】:

技术领域

发明涉及面向对象的编程环境中启动线程的方法,更具体地,涉及一种在面向对象的编程环境中的多线程启动方法。

背景技术

近年来,在软件开发中程序的规模逐渐取向大规模化,为此,可维护性以及再利用性好的面向对象语言引人瞩目。面向对象语言是指一种语言,其描述对象的动作,并将对象的动作及该对象组合起来作为程序来描述。并且,对象是指数据以及操作该数据的过程(方法)被一体化而成的单位。面向对象语言包括有例如C++。C++是在面向过程的编程语言“C”的基础上添加了面向对象编程的支持的编程语言。C++相比于C各种功能都得到了强化。

但是,由于C++语言最初只是设计用于单线程的编程环境,因此多线程机制是在后来作为库添加到C++语言中的。

当前,创建线程需要使用线程库中的pthread_create()库函数。以下是pthread_create()的函数原型和功能描述,该手册来自于solaris9,可以用“man pthread_create”获得。

int pthread_create(pthread_t*thread,const pthread_attr_t*attr,void*(*start_routine,void*),void*arg);

thread:线程id.[输出参数]

attr:指定线程的属性[输入参数]

start_routine:线程的入口[输入参数]

arg:入口函数start_routine的变量地址[输入参数]

说明:

pthread_create()函数用于在进程中创建新的线程,该线程具有由attr规定的属性。如果attr为空,则使用缺省属性。(参见pthread_attr_init(3THR))。即使后期修改了attr所规定的属性,线程的属性也不会改变。在成功完成线程之后,pthread_create()在thread所引用的位置处存储所创建线程的ID。

线程的创建是以arg作为唯一变量来执行start_routine。start_routine返回的结果就像是使用start_routine的返回值作为退出状态,隐式地调用了pthread_exit()库函数。这与调用线程创建函数的主函数main()的主线程是不同的。在main()函数中,当从main()返回时,效果就像是使用main()的返回值作为退出状态,隐式地调用了exit()。

pthread_create()要求一个c类型的函数作为其参数start_routine(),并且一般arg通常是作为一个普通参数被传递给c类型函数start_routine()。

因此,当前,以如下方式进行启动线程:针对每线程,写出独立的C类型的入口函数。这些函数将用作start_routine()。

但是,在需要启动多个类似线程的情况下,编程人员必须写出多个线程的各自入口函数,因此工作量大,而且写出的程序结构不够清晰,难以维护和阅读。

下面的代码示出了创建同时执行耗时函数sleep(10)的五个线程的现有方法:

  /*cc thisfile.c-lthread-lpthread*/  #define_REENTRANT/*basic 3-lines for threads*/  #include<pthread.h>  #include<thread.h>  #define NUM_THREADS 5  #define SLEEP_TIME 10  void*sleeping(void*);/*thread routine*/  int i;  thread_t tid[NUM_THREADS];/*array of thread IDs*/  int

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于朗讯科技公司,未经朗讯科技公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201010001510.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top