metodo sinchronizatorius lockina visa objekta. Metodo neuzlockinsi,
lockinamas koks tai objektas
public synchronized method() yra tas pats kaip
public void method() {
synchronized(this) {
}
}
dar galima pasizvalgyt po java.util.concurrent
"Jornada Del Muerto" <ask@me.email> wrote in message
news:hpkkr8$t4m$1@trimpas.omnitel.net...
> Tai kaip suprantu jei savais zodziais sis metodo modifikatorius lockina
> kazkoki kvieciama metoda kad kiti lauktu eileje, del to jei tai masyvas
> tai efektyvu bus jei tik per viena metoda bus su juo dirbama ir tada keli
> kazkoki threadai nesusipesa, dabar aiskiau :) dekui :)
>
> "toots" <www@mail.com> wrote in message
> news:hpkkgb$sj8$1@trimpas.omnitel.net...
>> sinchronizavimo principas gan paprastas - rakini (sinchronizuoji) kodo
>> gabala kuri naudos/gali naudoti keli thread'ai. Tas ypac pasakytina apie
>> duomenis, kurie gali but modifikuoti. Jeigu keli Thread'ai gali
>> modifikuot
>> masyva
>> reikia padaryt tik viena vieta per kuria tas butu daroma, kuria galima
>> butu
>> sinchronizuot. Tam kad ir modifikuojantis ir skaitantis Threadai butu
>> sinhronizuoti galima tiesiog sinchronizuoti su tuo paciu objektu, pvz
>>
>> public class Dummy {
>>
>> private List list;
>> private Object lock = new Object();
>>
>> public void addValue(Object value) {
>> synchronized(lock) {
>> list.add(value);
>> }
>> }
>>
>> public Object getValue() {
>> synchronized(lock) {
>> //skaitom lista
>> }
>> }
>>
>> tokiu budu jei kas gavo locka ir keicia lista visi kiti stovi eilej ir
>> laukia kol lockas bus laisvas ir jau po to mato pakeista lista.
>>
>> "Jornada Del Muerto" <ask@me.email> wrote in message
>> news:hpk39o$1al$1@trimpas.omnitel.net...
>>> Sveiki,
>>>
>>> Ne taip senai pradejau dirbt su java, kurti appletus kurie daug dirba
>>> su grafika, na tiksliau zaidimus ir pas mane branduolyje naudojasi
>>> threadas kuris atsako uz ekrano perpiesima bei zaidimo heartbeat
>>> funkcija
>>> (laikas nuo laiko objektu dalyvaujanciu zaidime apdirbima, toki kaip ju
>>> judejimas, kazkokios kitos life cycle funkcijos). Naudoju gan
>>> standartine
>>> ideologija, yra scena ir aktoriai (zaidime dalyvaujantys objektai). Na
>>> ir
>>> zinau apie toki funkciju modifikatoriu kaip synchronized taciau kazkaip
>>> neradau gero aprasymo kaip ji naudoti efektyviai.
>>>
>>> Vat ir paleidus is eclipse editoriaus rodos viskas graziai veikia, o
>>> jei appletas leidziasi is web tai retkarciais man jis luzteli butent
>>> darbe
>>> su masyvu kiek pastebejau, kad buna kartais kreipiamasi i jau
>>> neegzistuojanti aktoriu (na jie turi givybe, gali mirti ir tada buna
>>> automatiskai heartbeate pasalinami), kaip suprantu blogai sudeliojas
>>> synchronized modifikatorius ar tai ne visur.
>>>
>>> Gal kas gali apsviesti kaip ji (synchronized) efektyviai naudoti ir
>>> kur
>>> tiksliai reikia delioti? as lyg sudejas ant visu zemo lygio funkciju
>>> kurios i masyva kreipiasi bet kartais tai vistiek nutinka, na bet kokia
>>> info kuri paaiskintu tolkom apie synchronized nekenktu..
>>
>>