JavaÏ̵߳Äͬ²½
ÔÚJ2ME¿ª·¢ÖУ¬Ïß³ÌÊÇÒ»¸öÐèÒª·Ç³£ÖØÊÓµÄÎÊÌ⣬ÏÂÃæÊÇÒ»¶Î¹ØÓÚÏ̵߳ÄÎÄÕ¡£ÎÒÈÏΪ¶Ô´òºÃÏ̻߳ù±¾ºÜÓаïÖú¡£
zz
http://www.j2medev.com/Article/ShowArticle.asp?ArticleID=5478
Ò»¡¢Í¬²½ÎÊÌâÌá³ö
Ï̵߳Äͬ²½ÊÇΪÁË·ÀÖ¹¶à¸öÏ̷߳ÃÎÊÒ»¸öÊý¾Ý¶ÔÏóʱ£¬¶ÔÊý¾ÝÔì³ÉµÄÆÆ»µ¡£
ÀýÈ磺Á½¸öÏß³ÌThreadA¡¢ThreadB¶¼²Ù×÷ͬһ¸ö¶ÔÏóFoo¶ÔÏ󣬲¢ÐÞ¸ÄFoo¶ÔÏóÉϵÄÊý¾Ý¡£
public
class
Foo {
private
int
x = 100;
public
int
getX() {
return
x;
}
public
int
fix(int
y)
{
x = x - y;
return
x;
}
}
public
class
MyRunnable implements
Runnable {
private
Foo foo = new
Foo();
public
static
void
main(String[] args) {
MyRunnable r = new
MyRunnable();
Thread ta = new
Thread(r, "Thread-A"
);
Thread tb = new
Thread(r, "Thread-B"
);
ta.start();
tb.start();
}
public
void
run() {
for
(int
i =
0; i < 3; i++) {
this
.fix(30);
try
{
Thread.sleep(1);
} catch
(InterruptedException e) {
e.printStackTrace();
&nbs
Ïà¹ØÎĵµ£º
×î½üÔÚ×öÒ»¸ö¶Ôjava×ÀÃæÓ¦ÓóÌÐòÏîÄ¿£¬ÐèÒª´ò°ü³ÉͬÆÕͨµÄ¶þ½øÖÆÓ¦ÓóÌÐòÒ»Ñù¡£
[1]ʹÓÃeclipse ½«Õû¸öÏîÄ¿´ò°ü³É¿ÉÔËÐеÄjarÎļþ£¬ÔÚÓ¦Óùý³ÌÖз¢ÏÖ×ÊÔ´ÎļþÈç¹û²»ÊÇͨ¹ýinputstreamÀ´¶ÁÈ¡µÄ»°£¬ÊÇÎÞ·¨·ÃÎʵ½µÄ£¬ÔÚ×öÏîĿʱûÓп¼Âǵ½Õâµã£¬ËùÒÔ×îºóÖ»ºÃ° ......
java»·¾³±äÁ¿ÉèÖý̳Ì
ÏÂÔØºÃµÄJDKÊÇÒ»¸ö¿ÉÖ´Ðа²×°³ÌÐò£¬Ë«»÷°²×°¡£½«°²×°Â·¾¶¸ÄΪ£ºC:\jdk1.6.0£¨µ±È»ÆäËû·¾¶Ò²¿ÉÒÔ£©¡£
JDK°²×°Íê³ÉÖ®ºó
ÎÒÃÇÀ´ÉèÖû·¾³±äÁ¿£º
ÎҵĵçÄÔµãÓÒ¼ü£¬Ñ¡Ôñ“ÊôÐÔ”£¬Ñ¡Ôñ“¸ß¼¶”±êÇ©£¬½øÈë»·¾³±äÁ¿ÉèÖ㬷ֱðÉèÖÃÈçÏÂÈý¸ö»·¾³±äÁ¿£º
£¨1£©
ÉèÖúÃpath±äÁ¿£¬Ê¹µ ......
Ê×ÏÈ£¬ÉèÖÃmysqlµÄ»·¾³±äÁ¿£¨ÔÚpathÖÐÌí¼Ó%MYSQL_HOME%\bin£©£¬ÖØÆôµçÄÔ¡£
ÍêÕû´úÂ룺
/**
* @param args
*/
public static void main(String[] args) {
/*
&nbs ......
Ò»°ã¶øÑÔ£¬¿ª·¢ÕßÉçȺ˵µ½¶¯Ì¬ÓïÑÔ£¬´óÖÂÈÏͬµÄÒ»¸ö¶¨ÒåÊÇ£º“³ÌÐòÔËÐÐʱ£¬ÔËÐиıä³ÌÐò½á¹¹»ò±äÁ¿ÀàÐÍ£¬ÕâÖÖÓïÑÔ³ÆÎª¶¯Ì¬ÓïÑÔ”¡£´ÓÕâ¸ö¹Ûµã¿´£¬perl,phthon,rubyÊǶ¯Ì¬ÓïÑÔ£¬C++,JAVA,C#²»ÊǶ¯Ì¬ÓïÑÔ¡£
ÔÚJavaÔËÐÐʱ»·¾³ÖУ¬¶ÔÓÚÈÎÒâÒ»¸öÀ࣬ÄÜ·ñÖªµÀÕâ¸öÀàÓÐÄÄЩÊôÐԺͷ½·¨£¿¶ÔÓÚÈÎÒâÒ»¸ö¶ÔÏó£¬ÄÜ·ñµ ......
ÊÂÎñµÄÌØÐÔ£º
1) Ô×ÓÐÔ£¨atomicity£©£ºÊÂÎñÊÇÊý¾Ý¿âµÄÂß¼¹¤×÷µ¥Î»£¬¶øÇÒÊDZØÐëÊÇÔ×Ó¹¤×÷µ¥Î»£¬¶ÔÓÚÆäÊý¾ÝÐ޸ģ¬ÒªÃ´È«²¿Ö´ÐУ¬ÒªÃ´È«²¿²»Ö´ÐС£
2) Ò»ÖÂÐÔ£¨consistency£©£ºÊÂÎñÔÚÍê³Éʱ£¬±ØÐëÊÇËùÓеÄÊý¾Ý¶¼±£³ÖÒ»ÖÂ״̬¡£ÔÚÏà¹ØÊý¾Ý¿âÖУ¬ËùÓйæÔò¶¼±ØÐëÓ¦ÓÃÓÚÊÂÎñµÄÐ޸ģ¬ÒÔ±£³ÖËùÓÐÊý¾ÝµÄÍêÕûÐÔ¡£
3)&n ......