18.04.2013 Views

Tehnici de implementare a concurentei în analiza si proiectarea ...

Tehnici de implementare a concurentei în analiza si proiectarea ...

Tehnici de implementare a concurentei în analiza si proiectarea ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

În multe cazuri respectarea principiilor este realizata doar <strong>în</strong> cazul <strong>în</strong> care se<br />

impune o anumita disciplina <strong>de</strong> programare, constructiile <strong>de</strong> limbaj neputând garanta<br />

acest lucru.<br />

Mecanism <strong>de</strong> interactiune Principiul<br />

Principiul Principiul Principiul<br />

concurenta<br />

expre<strong>si</strong>bilitatii orientarii pe apelat izolarii separarii<br />

<strong>si</strong>ncronizare prin terminare concurenta intra-obiect<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

nu nu nu<br />

semafoare, mutex <strong>si</strong> lock concurenta intra-obiect nu (câteodata da) nu nu<br />

regiuni critice conditionale executie <strong>de</strong>p. <strong>de</strong> stare nu (câteodata da) nu nu<br />

<strong>si</strong>ncronizare piggy-backed executie <strong>de</strong>p. <strong>de</strong> stare nu nu nu<br />

monitor nu da da da<br />

variabile <strong>de</strong> conditie executie <strong>de</strong>p. <strong>de</strong> stare da nu nu<br />

asteptare conditionala executie <strong>de</strong>p. <strong>de</strong> stare da nu nu<br />

coada <strong>de</strong> asteptare executie <strong>de</strong>p. <strong>de</strong> stare da nu nu<br />

inclu<strong>de</strong>re/exclu<strong>de</strong>re op. executie <strong>de</strong>p. <strong>de</strong> stare da nu nu<br />

abstrac. comportamentului executie <strong>de</strong>p. <strong>de</strong> stare<br />

executie <strong>de</strong>p. <strong>de</strong> istoric<br />

concurenta intra-obiect<br />

da nu nu<br />

mo<strong>de</strong>lul Actor<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

executie <strong>de</strong>p. <strong>de</strong> istoric<br />

conc intra-obiect (uneori)<br />

da<br />

nu<br />

nu<br />

meto<strong>de</strong> cu garzi<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

da<br />

da (nu e<br />

da<br />

executie <strong>de</strong>p. <strong>de</strong> istoric<br />

complet izolat)<br />

multimi <strong>de</strong> acceptare executie <strong>de</strong>p. <strong>de</strong> stare<br />

da da (nu e<br />

da<br />

executie <strong>de</strong>p. <strong>de</strong> istoric<br />

complet izolat)<br />

expre<strong>si</strong>i <strong>de</strong> cale concurenta intra-obiect<br />

executie <strong>de</strong>p. <strong>de</strong> istoric<br />

da da nu<br />

rutina <strong>de</strong> vitalizare pos. conc. intra-obiect<br />

da da (nu e<br />

nu<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

complet izolat)<br />

rutina generalizata concurenta intra-obiect<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

da da da<br />

operatii neserializate conc. intra-ob. restrictiva da da da<br />

protocol cititor/scriitor conc. intra-ob. restrictiva da da da<br />

control reflectiv concurenta intra-obiect<br />

executie <strong>de</strong>p. <strong>de</strong> stare<br />

da da nu (po<strong>si</strong>bil da)<br />

Tabel 2.1.<br />

În alta ordine <strong>de</strong> i<strong>de</strong>i, alaturi <strong>de</strong> nerespectarea principiilor <strong>de</strong> proiectare ale<br />

limbajelor, care sunt direct legate <strong>de</strong> conceptele <strong>de</strong> baza ale programarii orientate-<br />

obiect <strong>si</strong> programarii concurente, multe dintre limbajele <strong>de</strong> programare studiate au<br />

<strong>de</strong>zavantaje majore concretizate prin dificultatea testarii <strong>si</strong> <strong>de</strong>panarii aplicatiilor <strong>si</strong><br />

slaba lizibilitate a codului sursa.<br />

Aceste <strong>de</strong>zavantaje pot fi minimizate prin utilizarea <strong>de</strong> instrumente care sa<br />

automatizeze procesul <strong>de</strong> <strong>implementare</strong>a a aplicatiilor pe baza unor mo<strong>de</strong>le ale<br />

structurii <strong>si</strong> comportamentului claselor <strong>de</strong> obiecte concurente. Aceasta i<strong>de</strong>e va fi<br />

<strong>de</strong>zvoltata pe larg <strong>în</strong> capitolele 4 <strong>si</strong> 5.<br />

54

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!