|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
进程间通信
+ S* M( g) k$ v; e
8 I1 Y( p) z; p0 r5 R& E6 U3 e
1 d/ l' }! ]! L/ P" R/ a6 A, M1 @1.管道有什么特点?
7 v$ [9 v Y! r' f" w% H. y
3 ?* X6 I0 w8 @0 C0 @# @+ R5 j! y
管道是单向的、先进先出的,它把一个进程的输出和另一个进程的输入连接在一起。
* g. x6 M% |/ e( q% s0 }2 `
1 r7 q, M2 K3 y$ {9 z9 X, F: H& R w) |9 o7 w
一个进程(写进程)在管道的尾部写入数据,另一个进程(读进程)从管道的头部读出数据。 V' c! L: ?; \
4 r6 L. h) n% |$ A0 Z& V2 S, S2 E& Z8 V& p- m5 [
数据被一个进程读出后,将被从管道中删除,其它读进程将不能再读到这些数据。
' X* n8 u# [3 _ _7 M( l# K) z+ d6 \
0 C- ~6 l' S: k5 Z, J) K& B+ d1 L+ z3 {$ |. Y+ n7 m: \2 Z/ F, {. I S
管道提供了简单的流控制机制,进程试图读空管道时,进程将阻塞。同样,管道已经满时,进程再试图向管道写入数据,进程将阻塞
5 m8 M$ _3 V% x- I" b( B8 {; t0 v2 c; n" L+ |* ~
) d3 |; z! O9 [% |$ [6 X4 ]" s+ p3 F
5 l) a, @3 j4 D: O. D" B: O* m7 \
2.无名管道与有名管道的区别?
# V- F3 `& |! S6 z( @' x2 q) g j! W1 B, w2 ]- d. p9 x5 s
- C& e6 E$ _! P9 A w, w4 l" v; x! v7 P. L/ O0 `' ~3 Z+ E$ V
+ n# c' O7 g) Z. X; z" W }2 z; ?
+ w& |* V( ^4 e2 N( J$ B& q* b. R$ f: Q* Q8 v
4 {4 x) Y' h3 z2 f, |; F" t7 B
# q* q! ?8 \( e' P
; F4 R" j5 V$ E/ w4 A% f
^. ?% z L8 z: B" J! z3 {" y9 \0 T0 _. n( v& z
|
|