当前位置: 首页 > news >正文

网站开发的语言有什么做网站难吗 挣钱吗

网站开发的语言有什么,做网站难吗 挣钱吗,无锡高端网站建设公司,wordpress anewlinux下线程分离属性 一、线程的属性---分离属性二、线程属性设置2.1 线程创建前设置分离属性2.2 线程创建后设置分离属性 一、线程的属性—分离属性 什么是分离属性#xff1f; 首先分离属性是线程的一个属性#xff0c;有了分离属性的线程#xff0c;不需要别的线程去接合… linux下线程分离属性 一、线程的属性---分离属性二、线程属性设置2.1 线程创建前设置分离属性2.2 线程创建后设置分离属性 一、线程的属性—分离属性 什么是分离属性 首先分离属性是线程的一个属性有了分离属性的线程不需要别的线程去接合自己的(回收自己的资源)。 a.线程的分离属性有两种分离态detached和非分离态joinable。 b.非分离态的线程只有在调用pthread_join之后才会完全释放自己所占用的资源可以用pthread_detach函数将线程修改为分离态分离态的线程在线程结束后由系统自动释放其所占用的所有资源 c.线程创建后默认属性是非分离态需要调用pthread_join释放线程所占用的资源 但是虽然说是分离的但是进程退出了该线程还是会退出的。 总结 设置了分离属性的线程 - 不需要pthread_join() 设置了非分离属性的线程 - 需要pthread_join() - 默认创建的普通属性线程就是非分离线程。 退出进程所有子线程都会消亡系统会回收他们资源。 如果设置为非分离属性的线程且不去回收子线程资源那么一个进程创建的子线程数据是有限请下面程序环境ubuntu20.04 64位 #include stdio.h #include pthread.h #include stdlib.h #include unistd.h//定义退出的值为全局变量 int retval 10;//子线程 void *start_pthread(void *arg) {int cnt 0;printf(arg:%ld\n, *((unsigned long *)arg));}int main(void) {int cnt 0;unsigned long val 0;pthread_t thread_id;//主线程 运行时间比子线程时间长主线程运行退出后回收子线程资源while (1){//线程创建 非分离int ret pthread_create(thread_id, NULL, start_pthread, val);if(ret ! 0){printf(pthread_create fail\n);return -1;} val;}printf(接合子线程成功\n);return 0;}运行效果 如果不设置为分离属性主不回收子线程资源创建到32749条时创建线程失败 二、线程属性设置 线程属性设置通常有两个种一种是在创建前设置好分离属性别一个种是线程运行后再设置线程属性接下来先看第一种情况。 2.1 线程创建前设置分离属性 线程创建前设置分离属性就是添加一个分离属性到一个属性变量中然后使用属性变量去创建一个线程那么创建出来的线程就是具有分离属性的线程。 接下来看函数 1定义一个属性变量 - 数据类型pthread_attr_t pthread_attr_t attr;2初始化属性变量。 - pthread_attr_init() - man 3 pthread_attr_init #include pthread.h int pthread_attr_init(pthread_attr_t *attr);参数 attr未初始化的属性变量 返回值 成功0 失败非0错误码 3设置分离属性到属性变量中。 #include pthread.h int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);参数 attr已经初始化过的属性变量 detachstate PTHREAD_CREATE_DETACHED - 分离属性 PTHREAD_CREATE_JOINABLE - 非分离属性 等同于 pthread_create(thread_id, NULL, start_pthread, val); 返回值 成功0 失败非0错误码 4使用属性变量去创建一个新的线程。 pthread_create(tid,attr,.....); - 创建出来的线程就是分离属性的线程不需要pthread_join()5销毁属性变量。 - pthread_attr_destroy() - man 3 pthread_attr_destroy int pthread_attr_destroy(pthread_attr_t *attr);参数 attr已经初始化过的属性变量 返回值 成功0 失败非0错误码 案例代码 #include stdio.h #include pthread.h #include stdlib.h #include unistd.h//定义退出的值为全局变量 int retval 10;//子线程有分离--不需要接合 void *start_pthread(void *arg) {int cnt 0;printf(arg:%ld\n, *((unsigned long *)arg));}int main(void) {int cnt 0;unsigned long val 0;pthread_t thread_id;//定义分享属性变量 pthread_attr_t attr;//初始化属性变量pthread_attr_init(attr);//设置线程属性--分离属性pthread_attr_setdetachstate(attr, PTHREAD_CREATE_DETACHED);//主线程 运行时间比子线程时间长主线程运行退出后回收子线程资源while (1){//线程创建 分离属性int ret pthread_create(thread_id, attr, start_pthread, val);if(ret ! 0){printf(pthread_create fail\n);return -1;} val;}printf(接合子线程成功\n);return 0;}分离属性后的线程可以自动消亡主线程可以无限创建子线程。 2.2 线程创建后设置分离属性 先创建一个普通线程(分享属性设置为NULL, 默认的分享属性为不分离)然后在线程中调用一个设置分离属性的函数那么这个线程就变成分离的属性。 1设置线程本身的属性为分离属性。 - pthread_detach() - man 3 pthread_detach #include pthread.h int pthread_detach(pthread_t thread);函数作用 设置分离属性给线程 参数 thread需要设置分离属性的线程的ID号 返回值 成功0 失败非0错误码 2获取线程的ID号。 - pthread_self() - man 3 pthread_self #include pthread.h pthread_t pthread_self(void);参数 无 返回值线程的ID号。 案例 #include stdio.h #include pthread.h #include stdlib.h #include unistd.h//子线程 void *start_pthread(void *arg) {int cnt 0;//获取线程IDpthread_t thread_id pthread_self();//分离线程int ret pthread_detach(thread_id);if(ret ! 0){printf( pthread_detach fail\n);exit(0);}printf(arg:%ld\n, *((unsigned long *)arg));}int main(void) {unsigned long val 0;pthread_t thread_id;//主线程 运行时间比子线程时间长主线程运行退出后回收子线程资源while (1){//线程创建 默认为非分离int ret pthread_create(thread_id, NULL, start_pthread, val);if(ret ! 0){printf(pthread_create fail\n);return -1;} val;}return 0;}设置了分离属性之后子线程可以无限被创建。
http://www.hkea.cn/news/14375324/

相关文章:

  • 三部曲网站建设做网站怎么看效果
  • 网站开发的销售网站建设资金投入分析
  • php一个企业网站多钱怎么做打赏看视频的网站
  • 手机网站建站用哪个软件好互联网域名注册查询
  • 网站建设与管理作业西安 做网站
  • 做网站分前台后端吗wordpress 代码位置
  • 做网站网页需要学些什么wordpress文章链接怎么改
  • 淘宝网站建设策划书wordpress 替代
  • 如何上传图片到网站最简单的软件开发工具
  • 白银区住房和城乡建设局网站建网站的公司起什么名好
  • 网站建设产品手册网站百度网盘
  • 建材在哪些网站做企业网站站内优化
  • 优酷视频放到网站上怎么做网站建设的类型有几种
  • 温州网站建设方案报价wordpress 年份索引
  • 安徽网站建设信息深圳品牌设计公司的发展
  • 模板网站与定制网站的优缺点教育类网站素材
  • 企业备案 网站名称网站主页图片怎么换
  • 重庆微信网站建设国内免费crm
  • 宁波网站建设免费咨询合肥做网站便宜mdyun
  • 网站asp精品成品源码网站
  • 龙岩公司网站建设wordpress优酷插件
  • 网站图片设置链接网站建设一般多少钱app
  • 高端科研网站设计网页设计与制作课程思政
  • 哪个网站可以做试卷网站虚拟空间购买
  • 旅游网站框架网站开发环境的安装说明
  • 网站漂浮广告批量网站建设
  • 旅游建设投资公司中网站济南网站建设(选聚搜网络)
  • o2o网站建设代理商网站建设的阶段
  • 网站加载页模板wordpress会员注册怎么搞
  • 兰州微信信息平台网站建设百度快速收录接口