Fråga : Java synkroniserade tråden utfärdar

Hi experts

We har en utfärda med synkroniseringsmetoder, och synkroniserings anmärker med threads

We har korrekt att ha, och att testa kodifiera som vi avfyrar hålighetförfrågan, som skapar in i därefter en tråd vad går in i synkroniseringslåser som gör någon attrapp testar process.

We förväntar med synkroniseringsprocessaa gå kodifierar igenom för att vara 1 tråd för tråd 4 för tråd 3 för tråd 2, men vi har för närvarande utfärdar var trådarna går till och med synkroniseringsmetoden i denna beställer 1 version för

The java för tråd 2 thread.
(som resonera för tråd 3 för tråd 4 de 1 processaa första för tråd, som det är den första tråden som slår synkroniseringslåser) vi använder var: plattformen för
Java (TM) för versionen ”1.5.0_16 " för
java, den standarda upplagan för

We för VM för serveren för HotSpot för
Java för affären (byggande 1.5.0_16-b02) (TM) (byggande 1.5.0_16-b02, blandat funktionsläge) har gjort något som omkring gräver och, grundar att där sortera av en bugga på för http://bugzilla.globus.org/globus/show_bug.cgi?id=5583” för href= för java side
http://bugzilla.globus.org /globus/show_bug.cgi? id=5583

But vi är oförmögna att uppdatera den java versionen JVM, som andra applikationer använder denna version.

So för ifrågasätta:

1. Finns det another av långt av att använda en låsa metod med strömversionen av java vad ska arbete med multipel dragar att ta fram den ska vad gör trådar att gå in beställer?

2. Vi behöver en samling låser, så vi kan kontrollera bestämda trådar som gör metoderna för att bearbeta data.
For example Thread-1, tar fram en metod får en 0]
Thread-2 för låsa [tar fram en metod får en 1]
Thread-3 för låsa [tar fram en metod får en låsa [0] (blockerat till Thread-1 avslutar sig, som den behöver de samma proccesna samma som Thread-1), i-för-

Thanks,

p.s. för
etc.… är testar kodifierar är nedanför med utfärda med tråden som beställer (någon ska körning för hålighet förfråganen kodifiera på den korrekta porten)
> för
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
" codeBody " " >import java.net för class= " för
" klar "

Svar : Java synkroniserade tråden utfärdar

Låter något liknande som du bör i stället använda en köa (och kanske också en semaphore)

http://www.exampledepot.com/egs/java.lang/WorkQueue.html
http://java.sun.com/developer/technicalArticles/J2SE/concurrency/

Andra lösningar  
 
programming4us programming4us