上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 81 下一页
摘要: 63.1 整体概览 目前为止, 本书中大部分程序使用的 I/O 模型都是单个进程每次只在一个文件描述符上执行 I/O 操作,每次 I/O 系统调用都会阻塞直到完成数据传输。比如,当从一个管道中读取数据时,如果管道中恰好没有数据,那么通常 read()会阻塞。而如果管道中没有足够的空间保存待写入的数据 阅读全文
posted @ 2021-05-27 19:10 Mars.wang 阅读(64) 评论(0) 推荐(0)
摘要: 一、关于Channel Channel是一个连接,每个Channel对应一个ChannelPipeline ChannelPipeline 是 ChannelHandler的容器,按顺序执行ChannelHandler ChannelHandler用于在数据达到时处理业务逻辑,它被添加到Channe 阅读全文
posted @ 2021-05-27 10:20 Mars.wang 阅读(64) 评论(0) 推荐(0)
摘要: 转自:https://www.liaoxuefeng.com/wiki/1252599548343744/1303871087444002 java8提供了新的日期时间API,LocalDateTime public class Main { public static void main(Stri 阅读全文
posted @ 2021-05-26 15:54 Mars.wang 阅读(138) 评论(0) 推荐(0)
摘要: 在很多应用程序的设计中,父进程需要知道其某个子进程于何时改变了状态—子进程终止或因收到信号而停止。本章描述两种用于监控子进程的技术:系统调用 wait()以及信号 SIGCHLD。 26.1 等待子进程 对于许多需要创建子进程的应用来说,父进程能够监测子进程的终止时间和过程是很有必要的。 wait( 阅读全文
posted @ 2021-05-25 19:51 Mars.wang 阅读(116) 评论(0) 推荐(0)
摘要: 本章所述为进程的退出过程。首先说明如何调用 exit()和_exit()以终止一个进程。接着讨论运用退出处理程序(exit handler),在进程调用 exit()时自动执行清理动作。最后,将探讨fork()、 stdio 缓冲区以及 exit()之间的某些交互。 25.1 进程的终止: _exi 阅读全文
posted @ 2021-05-25 17:29 Mars.wang 阅读(108) 评论(0) 推荐(0)
摘要: 55.4 强制加锁 到目前为止介绍的锁都是劝告式锁。 这意味着一个进程可以自由地忽略 fcntl() (或 flock())的使用或简单地在文件上执行 I/O。内核不会阻止进程的这种行为。在使用劝告式锁时,应用程序的设计者需要: 1.为文件设置合适的所有权(或组所有权)以及权限以防止非协作进程执行文 阅读全文
posted @ 2021-05-25 16:46 Mars.wang 阅读(132) 评论(0) 推荐(0)
摘要: 前面的章节介绍了进程能用来同步动作的各项技术,包括信号和信号量。本章将介绍专门为文件设计的同步技术。 55.1 概述 应用程序的一个常见需求是从一个文件中读取一些数据,修改这些数据,然后将这些数据写回文件。只要在一个时刻只有一个进程以这种方式使用文件就不会存在问题,但当多个进程同时更新一个文件时问题 阅读全文
posted @ 2021-05-25 16:44 Mars.wang 阅读(101) 评论(0) 推荐(0)
摘要: 在通常情况下,程序中的多个线程会并发执行,每个线程各司其职,直至其决意退出,随即会调用函数 pthread_exit()或者从线程启动函数中返回。 有时候,需要将一个线程取消(cancel)。亦即,向线程发送一个请求,要求其立即退出。比如,一组线程正在执行一个运算,一旦某个线程检测到错误发生,需要其 阅读全文
posted @ 2021-05-25 15:01 Mars.wang 阅读(140) 评论(0) 推荐(0)
摘要: 本章介绍线程用来同步彼此行为的两个工具:互斥量( mutexe)和条件变量( condition variable)。互斥量可以帮助线程同步对共享资源的使用,以防如下情况发生:线程某甲试图访问一共享变量时,线程某乙正在对其进行修改。条件变量则是在此之外的拾遗补缺,允许线程相互通知共享变量(或其他共享 阅读全文
posted @ 2021-05-25 14:23 Mars.wang 阅读(73) 评论(0) 推荐(0)
摘要: 29.1 概述 与进程( process)类似1,线程( thread)是允许应用程序并发执行多个任务的一种机制。如图 29-1 所示,一个进程可以包含多个线程。同一程序中的所有线程均会独立执行相同程序,且共享同一份全局内存区域,其中包括初始化数据段( initialized data)、未初始化数 阅读全文
posted @ 2021-05-24 19:44 Mars.wang 阅读(138) 评论(0) 推荐(0)
上一页 1 ··· 38 39 40 41 42 43 44 45 46 ··· 81 下一页