Productores y consumidores de prueba

empaquetar t1;

public class {TestThread5

void Main (args String []) {public static
Shared s = new compartidos ();
nuevo Productor (s) .start ();
nuevo consumidor (s) .start ();
}
}

clase compartida {
carácter privado c;
writeable boolean volátil privado = true;

sincronizada setSharedChar vacío (char c) {
while {(se puede escribir!)
try {
wait ();
} Catch (Exception e) {
}
}

this.c = c;
writeable = false;
notificar();
}

Char sincronizado getSharedChar () {
while (grabable) {
try {
wait ();
} Catch (Exception e) {
}
}

writeable = true;
notificar();
c retorno;
}
}

Productor clase extiende Tema {
final privado compartido s;

Productor (Shared s) {
this.s = s;
}

@Override
public void run () {

para (char ch = 'a'; ch <= 'z'; ch ++) {
sincronizada (s) {
s.setSharedChar (CH);
System.out.println (ch + "producido por el productor");
}
}
}
}

clase de los consumidores se extiende Tema {
final privado compartido s;

pública del Consumidor (Compartido s) {
this.s = s;
}

@Override
public void run () {
char ch;
do {
sincronizada (s) {
ch = s.getSharedChar ();
System.out.println (ch + "consumido por el consumidor");
}
} While (ch = 'z'!);
}
}

Repetidamente imprimir los resultados:

A producida por el productor de
un consumida por el consumidor
B producido por el productor
b consumida por los consumidores
c producida por el productor
c consumida por los consumidores
d producido por el productor
d consumida por los consumidores
e producida por el productor
e consumida por los consumidores
f producido por el productor
f consumido por el consumidor
g producido por el productor
g consumida por los consumidores
h producida por el productor
h consumido por el consumidor
i producido por el productor
i consumido por el consumidor
j producida por el productor
j consumido por el consumidor
k producida por el productor
k consumida por los consumidores
l producida por el productor
l consumida por los consumidores
m producida por el productor
m consumida por los consumidores
n producida por el productor
n consumida por el consumidor
o producido por el productor
o consumido por el consumidor
p producido por el productor
p consumida por los consumidores
q producida por el productor
q consumido por el consumidor
r producida por el productor
r consumido por el consumidor
s producido por el productor
s consumido por el consumidor
t producida por el productor
t consumido por el consumidor
u producido por el productor
u consumido por el consumidor
v producida por el productor
v consumida por los consumidores
w producida por el productor
w consumido por el consumidor
X producidos por el productor
x Se consumida por los consumidores
y producida por el productor
y consumido por el consumidor
z producida por el productor
z consumida por los consumidores

 

Supongo que te gusta

Origin www.cnblogs.com/dengw125792/p/12599515.html
Recomendado
Clasificación