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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

gestionar <strong>de</strong><br />

interfata<br />

.<br />

.<br />

.<br />

110<br />

Obiect activ<br />

Proprietati<br />

Operatii<br />

Constrângeri <strong>de</strong><br />

<strong>si</strong>ncronizare<br />

coada <strong>de</strong> mesaje<br />

Figura 4.11. Structura unui obiect activ general<br />

În figura 4.11 am reprezentat grafic structura unui obiect activ. Gestionarul <strong>de</strong><br />

interfata reprezinta o entitate speciala <strong>si</strong>tuata la nivelul fiecarui obiect activ. Aceasta<br />

entitate realizeaza controlul <strong>si</strong> planificarea mesajelor receptionate <strong>si</strong> se concretizeaza<br />

la nivelul unui limbaj <strong>de</strong> programare particular printr-un fir <strong>de</strong> executie distinct, un<br />

mecanism <strong>de</strong> blocare sau un obiect <strong>de</strong> <strong>si</strong>ne statator <strong>în</strong>capsulat <strong>în</strong> cadrul obiectelor<br />

active. Gestionarul <strong>de</strong> interfata controleaza tratarea mesajelor prin executia a<strong>si</strong>ncrona<br />

a operatiilor asociate acestora pe baza valorilor proprietatilor (care <strong>de</strong>finesc starea<br />

obiectului), a constrângerilor <strong>de</strong> <strong>si</strong>ncronizare <strong>si</strong>/sau a operatiilor aflate <strong>în</strong> executie la<br />

un moment dat. Planificarea mesajelor este realizata cu ajutorul unei structuri<br />

speciale, numita coada <strong>de</strong> mesaje, care retine toate mesajele receptionate <strong>si</strong> netratate<br />

<strong>de</strong> catre gestionar. Gestionarul <strong>de</strong> interfata, coada <strong>de</strong> mesaje, proprietatile <strong>si</strong><br />

contrângerile <strong>de</strong> <strong>si</strong>ncronizare nu sunt vizibile <strong>în</strong> exterior, <strong>de</strong> catre celelealte obiecte<br />

active care compun un <strong>si</strong>stem. De asemenea, doar un subset <strong>de</strong> operatii care compun<br />

interfata obiectului activ vor fi vizibile, <strong>si</strong> ele pot fi apelate prin intermediul<br />

transmiterii <strong>de</strong> mesaje.<br />

Vom con<strong>si</strong><strong>de</strong>ra ca toate elementele care fac parte din structura unui obiect<br />

activ vor putea fi mostenite sau re<strong>de</strong>finite separat <strong>în</strong> subclase.<br />

Mo<strong>de</strong>lul obiect general <strong>de</strong>scris respecta cele patru principii <strong>de</strong> proiectare<br />

enuntate <strong>în</strong> capitolul doi.

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

Saved successfully!

Ooh no, something went wrong!