.


:




:

































 

 

 

 





? , , , , , . , . . , , , , . , .

. . . . , .

, . ( ) . , , , . . . , .

, .

-, . , .

-, , , . - , : . . , , , (profilers).

, .

, , . , . . , . Java synchronize (). , . Java Java . , . , , . , , . , , .

: .

obj1 ( ) :

synchronized(obj1) ;

 

:

 

synchronized(obj1){

...

m1(obj1);

...

obj1.m2();

...

}

. obj1 . , , .

, .

, . , ( - ), synchronized:

 

public class {

...

public synchronized (...){

...

}

}

 

.

 

:

public class C1{

public synchronized void m1(){

}

}

C1 obj1=new C1();

obj1.m1();

 

obj1.m1(), obj1 m1().

, , , .

, ( ), . ( ) .

 

, , . wait () notify ().

Java , Object :

void wait() , - ( ), . run() , () notify() notifyAll(). , llegalMonitorStateException.

void wait(long millis) , millis .

void wait(long millis, int nanos) , millis nanos .

 

void notify() , , . , . .

void notifyAll() - , , .

wait obj - while, wait:

synchronized(obj){

while(not )

obj.wait();

// , true

}

, while . : obj.wait() , , . wait obj, synchronized(obj). obj.notify() obj.notifyAll().





:


: 2017-02-28; !; : 483 |


:

:

, .
==> ...

1745 - | 1569 -


© 2015-2024 lektsii.org - -

: 0.018 .