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

怎么做外贸个人网站dede网站 设置404 错误页面

怎么做外贸个人网站,dede网站 设置404 错误页面,设计师在线接单,网站素材图标信号量本质上是一个非负的整数计数器#xff0c;也是UNIX中古老的实现进程互斥和同步的手段#xff0c;Linux下信号量概念是在线程中#xff0c;信号则在进程控制中#xff0c;不过原理差不多#xff0c;最基本最经典的操作莫过于P、V操作了#xff0c;能实现进程、线程的…信号量本质上是一个非负的整数计数器也是UNIX中古老的实现进程互斥和同步的手段Linux下信号量概念是在线程中信号则在进程控制中不过原理差不多最基本最经典的操作莫过于P、V操作了能实现进程、线程的互斥和同步操作非常值得深入理解。1.P、V操作原语  P操作  proceduce P(var s:semaphore) {   begin       s:s-1;       if(s0)then W(s);   end } V操作  proceduce V(var s:semaphore) {   begin       s:s1;       if(s0)then R(s);   end } 2.基本操作 数据类型信号量的数据类型为结构sem_t它本质上是一个长整型的数。 函数 1sem_init 功能         用于创建一个信号量并初始化信号量的值。 头文件       semaphore.h 函数原型     int sem_init (sem_t* sem, int pshared, unsigned int value); 函数传入值   sem:信号量。                    pshared:决定信号量能否在几个进程间共享。由于目前LINUX还没有实现进                                程间共享信息量所以这个值只能取0。                    value初始计算器 函数返回值   0成功。                    -1失败。 2其他函数。 //等待信号量 int sem_wait       (sem_t* sem); int sem_trywait   (sem_t* sem); //发送信号量 int sem_post       (sem_t* sem); //得到信号量值 int sem_getvalue (sem_t* sem); //删除信号量 int sem_destroy   (sem_t* sem); 功能sem_wait和sem_trywait相当于P操作它们都能将信号量的值减一两者的区别在         于若信号量的值小于零时sem_wait将会阻塞进程而sem_trywait则会立即返回。         sem_post相当于V操作它将信号量的值加一同时发出唤醒的信号给等待的进程        或线程。         sem_getvalue 得到信号量的值。         sem_destroy 摧毁信号量。 函数传入值 sem:信号量。 函数返回值 同上。 好了了解完基本操作继续做一个练习 这里用信号量实现互斥资源访问的功能   /*sem.c*/  #include stdlib.h     #include stdio.h     #include pthread.h     #include semaphore.h   #include errno.h        /*全局变量*/  int gnum 0;   /*信号量*/  sem_t sem;   /*声明线程运行服务程序*/  static void pthread_func_1 (void);      static void pthread_func_2 (void);           int main (void)      {       /*线程的标识符*/    pthread_t pt_1 0;        pthread_t pt_2 0;        int ret 0;          /*信号量初始化*/    sem_init(sem,0,1);     /*分别创建线程1、2*/    ret pthread_create (pt_1,          //线程标识符指针                            NULL,          //默认属性                           (void *)pthread_func_1,//运行函数                           NULL);          //无参数     if (ret ! 0)        {           perror (pthread_1_create);        }             ret pthread_create (pt_2,          //线程标识符指针                           NULL,           //默认属性                             (void *)pthread_func_2, //运行函数                           NULL);          //无参数     if (ret ! 0)        {           perror (pthread_2_create);        }        /*等待线程1、2的结束*/    pthread_join (pt_1, NULL);        pthread_join (pt_2, NULL);             printf (main programme exit!/n);       return 0;      }        /*线程1的服务程序*/  static void pthread_func_1 (void)      {        int i 0;                for (;;)        {          printf (This is pthread1!/n);           sem_wait(sem);     /*等待信号量*/          sleep (1);        /*临界资源*/      gnum;       printf (Thread1 add one to num:%d/n,gnum);              sem_post (sem);        /*释放信号量*/                }      }      /*线程2的服务程序*/    static void pthread_func_2 (void)      {        int i 0;             for (;;)        {          printf (This is pthread2!/n);        sem_wait(sem);     /*等待信号量*/      sleep (1);       /*临界资源*/      gnum;       printf (Thread2 add one to num:%d/n,gnum);              sem_post (sem);        /*释放信号量*/         }             pthread_exit (0);      } 编译运行可以看出和上次互斥锁结果一样的
http://wiki.neutronadmin.com/news/334040/

相关文章:

  • 网站服务器怎么收费怎么做网站的关键词
  • php 网站开发360wordpress打电话聊插件
  • 网站ping怎么做网络广告策划的内容
  • 建设银行泰州分行网站1网站建设的目标是什么意思
  • 网上有做logo的网站吗西安网站建设seo优化
  • 手机网站制作视频教程喀什建设网站
  • 网站顶部怎么做新浪链接做交互的网站
  • 网站建设百度贴吧门户网站系统有哪些平台
  • 福清市建设局监督站网站seo优化交流
  • 外贸网站代运营wordpress换头像不显示
  • 天河商城网站建设定制公交app下载
  • 深圳做网站公司哪家比较好wordpress图片标注插件下载
  • 怎么做网站移动端wordpress博客xiu
  • 做零售出口的网站如何备案成企业网站
  • 万网域名注册号后怎么做网站微信商城app
  • 网站悬浮代码私人可注册网站吗
  • asp.net网站入侵网站域名密码
  • 做的网站电脑上跟手机上不一样好玩的游戏网页
  • 贵阳花果园r区网站建设网站开发如何处理兼容性问题
  • 怎样做网站域名断桥铝门窗制作需要哪些工具
  • 石家庄做标书的网站网站建设中期目标
  • 文化传播公司做网站宣传好吗那个网站做720度效果图
  • 建立网站站建设可以吗灌云住房和城乡建设网站
  • 模具厂咋做网站介绍一学一做视频网站吗
  • 网站建设项目需求书珠海制作网站
  • 免费网站建设工具做网站要用到哪些架包
  • 怎么做卖橘子的网站上海网站建设的企业
  • 北京建设网站兼职普工wordpress+广告联盟
  • 企业做网站的公司重庆网站建设仿站
  • 用dw设计网站模板下载地址七牛云wordpress加速