[so] [Tema4][Linux] Testul 10

Alexandru Militaru alexandru.cmilitaru at gmail.com
Sat May 12 16:20:29 EEST 2018


Salut,

Am următoarea problemă la testul 10: deși thread-ul master trebuie să
apeleze so_fork() de un număr random de ori, după un număr variabil de
apeluri ale funcției (diferă în funcției de rulare) el rămâne blocat. Am
verificat atent și thread-ul master nu este preemptat: nu îi expiră cuanta
și nici nu este dat la o parte de un proces mai prioritar. Pur și simplu
după un număr de apeluri se blochează.

Deși pare a fi deadlock, thread-ul master și celelalte thread-uri nu
interacționează cu niciun lock comun. Thread-urile worker așteaptă să
ruleze, în timp ce thread-ul master este singurul care lucrează. Cu toate
acestea, el se blochează la un moment dat și nu trece mai departe. Nu se
blochează în so_fork, se blochează după ce iese din această funcție.

Care ar putea fi problema?

Am încărcat codul pe gitlab. Userul meu este cmilitaru2501.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/so/attachments/20180512/2b3c32cd/attachment.html>


More information about the so mailing list