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

地方网站 o2o用asp做的大型网站

地方网站 o2o,用asp做的大型网站,博罗网站开发,极简WordPress个人博客主题问题 如何编写信号安全的应用程序#xff1f; Linux 应用程序安全性讨论 场景一#xff1a;不需要处理信号 应用程序实现单一功能#xff0c;不需要关注信号 如#xff1a;数据处理程序#xff0c;文件加密程序#xff0c;科学计算程序 场景二#xff1a;需要处理信…问题 如何编写信号安全的应用程序 Linux 应用程序安全性讨论 场景一不需要处理信号 应用程序实现单一功能不需要关注信号 如数据处理程序文件加密程序科学计算程序 场景二需要处理信号 应用程序长时间运行需要关注信号并即使处理 如服务端程序上位机程序 场景一不需要信号处理 (单一功能应用程序) 场景二需要处理信号 (长时间运行的应用) 同步方案 通过标记同步处理信号整个应用中只有一个执行流 异步方案 专用任务处理应用中存在多个执行流 (多线程应用)设置专用信号处理任务其它任务忽略信号专注功能实现 同步解决方案 (单任务) 信号处理逻辑与程序逻辑位于同一个上下文 即信号处理函数和主函数不存在资源竞争关系 方案设计一 将任务分解为子任务(每个任务可对应一个函数)信号递达时信号处理函数中仅标记递达状态子任务处理结束后真正执行信号处理 同步方案示例一 存在的问题 由于给每个信号唯一的标记位置因此所有信号转变为不可靠信号并且仅保留最近递达的信号信息 方案设计二 将任务分解为子任务 (每个任务可对应一个函数) 创建信号文件描述符并阻塞所有信号 (可靠信号递达前位于内核队列中)子任务处理结束后通过 select 机制判断是否有信号需要处理 true 处理信号  false 等待超时 关键系统函数 #include sys/select.h #include sys/signalfd.h int signalfd(int fd, const sigset_t* mask, int flag); int select(int nfds, fd_set* readfds, fd_set* writefds, fd_set* exceptfds, struct timeval* timeout); 使用 signalfd() 处理信号 先屏蔽所有信号 (无法递达进程)之后为屏蔽信号创建文件描述符当时机成熟通过 read() 系统调用读取未决信号 (主动接收信号) 使用 select() 监听文件描述符 使用 select() 处理信号 存在的问题 由于使用了 select 机制即便没有信号需要处理也需要等待 select 超时任务实时性受到影响 异步解决方案 (多任务) 使用独立任务处理信号程序逻辑在其他任务中执行 即通过多线程分离信号处理与程序逻辑 主线程专用于信号处理其他线程完成程序功能 多线程信号处理 信号的发送目标是进程而不是某个特定的线程 发送给进程的信号仅递送给一个进程 内核从不会阻塞目标信号的线程中随机选择 每个线程拥有独立的信号屏蔽掩码 异步解决方案 (多任务) 主线程对目标信号设置信号处理的方式 当信号递达进程时只可能时主线程进行信号处理 其他线程首先屏蔽所有可能的信号之后执行任务代码 无法接收到信号不具备信号处理能力 进程与线程 进程应用程序的一次加载执行 (系统执行资源分配的基本单位) 线程进程中的程序执行流 一个进程中可以存在多个线程 (至少存在一个线程)每个线程执行不同的任务 (多个线程可并行执行)同一个进程中的多个线程共享进程的系统资源 Linux 多线程 API 函数 头文件#includepthread.h 线程创建函数int pthread_create(pthread_t* thread, const pthread_attr_t* attr, void* (*start_routine)(void*), void* arg); threadpthread_t 变量的地址用于返回线程标识attr线程的属性可设置为 NULL即使用默认属性start_routine线程入口函数arg线程入口函数参数 线程标识 pthread_t pthread_self(void);获取当前线程的 ID 标识 线程等待 int pthread_join(pthread_t thread, void** retval);等待目标线程执行结束 多线程编程示例 异步方案示例 -- 主线程 异步方案示例 -- 任务线程 信号设计模式小结 多数模式不需要处理信号因此可直接屏蔽信号 需要处理信号的程序重点考虑信号安全性问题 同步处理方案通过设计让任务代码和信号处理代码交替执行 问题信号处理是否及时任务执行是否实时异步处理方案任务代码与信号处理代码位于不同执行流 问题将信号安全性问题转换为线程安全性问题因此程序本身是否能做到线程安全
http://www.dnsts.com.cn/news/66776.html

相关文章:

  • 网站建设企业服务国内可以做的国外兼职网站
  • 赣州建设信息网全国最好网络优化公司
  • 新吴网站建设如何做谷歌seo推广
  • 网站建设 网站开发台州做企业网站
  • 大连外经贸网站长沙专业做网站排名
  • 宁波建设网站的公司青岛网络seo公司
  • 网站开发 业务流程图山东电力建设第一工程有限公司网站注册
  • 对网站建设有什么样好的建设意见东莞建网站公司排名
  • 南沙网站建设wwiw跨境电商好做吗
  • gta5网站建设中wordpress站所有分类不显示
  • 做网站经验汕头seo计费管理
  • 做网站第三方登录怎么弄西安企业网站怎么建立
  • 建设厅培训中心网站网站自己做服务器划算吗
  • 隆尧企业做网站泉州有专门帮做网站的吗
  • 外贸展示网站多少钱成都APP,微网站开发
  • 做那种事情的网站wordpress安装主题慢
  • photoshop网站设计wordpress忘记用户名
  • 如何用源代码建设网站土木毕业设计代做网站
  • 零基础网站建设教学qt做网站界面
  • 蓬莱市住房和规划建设管理局网站指数 网站权重
  • 房产门户网站平台搭建免费做字体的网站
  • 网站海外推广公司网站建设战略规划的方法
  • 个人怎么做网站二级网站建设 知乎
  • 韩国ps教程网站短链接生成免费
  • postgresql做网站用什么环境phpcms中英文网站模板
  • 东莞网站关键排名做个免费的网站
  • 门户网站建设意义网站建设用什么教材
  • 设计网站中企动力优微博手机网页版入口
  • 英德市建设局网站常州网站建设推荐
  • 遵义怎样做网站苏州百度搜索排名优化