多做题,通过考试没问题!

02335网络操作系统

睦霖题库>高等教育工学类自考>02335网络操作系统

使用异步通信原语时,发送者在消息发送完成以前为什么不能使用缓冲区?该如何解决?

正确答案: 因为倘若发送进程在消息发送完成之前,即在消息发送期间使用或修改原来的缓冲区,将会造成错误。
有两种办法解决(应采用异步原语):
①采用带拷贝的非阻塞原语,即让内核把消息拷贝到内核缓冲区,允许调用进程继续运行。
②带中断的非阻塞发送,即当消息发送完成后,中断发送进程,通知发送进程此时缓冲区可用。
答案解析:
进入题库查看解析

微信扫一扫手机做题