<div dir="ltr"><div><div><div>Salutare,<br><br></div>Am rezolvat problema. Un argument pe care il foloseam la pthread_create era un pointer care era pe stiva,<br></div>asa ca se pierdea mai departe tot. :)<br><br></div>Alex<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, May 8, 2019 at 1:08 AM Alexandru Fazakas <<a href="mailto:alex.fazakas97@gmail.com">alex.fazakas97@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><div><div>Salut, Paul<br><br></div>Da, am verificat valoarea de retur si aceea este 0.<br><br></div>Seara faina,<br></div>Alex<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, May 8, 2019 at 12:12 AM Paul Olaru <<a href="mailto:olarupaulstelian97@gmail.com" target="_blank">olarupaulstelian97@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_-7769593093445321173gmail-m_-2891651792881967385WordSection1"><p class="MsoNormal"><span lang="RO">Ca idee, ce returnează un pthread_create care are succes se poate da join indiferent de situație, chiar și dacă threadul a fost creat suspendat sau fuck knows what.<u></u><u></u></span></p><p class="MsoNormal"><span lang="RO"><u></u> <u></u></span></p><p class="MsoNormal">Primul parametru este pointer la tid. Acel tid va avea o valoare validă pe care poți da join dacă pthread_create returnează 0 (success). Al doilea l-ai dat NULL presupun, al treilea e funcția de startup care știi ce formă are și al patrulea e parametrul de dat acelei funcții.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Ai verificat ce returnează pthread_create în sine? Dacă e diferit de 0 ai putea da perror…</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986" target="_blank">Mail</a> for Windows 10</p><p class="MsoNormal"><u></u> <u></u></p><div style="border-color:rgb(225,225,225) currentcolor currentcolor;border-style:solid none none;border-width:1pt medium medium;padding:3pt 0in 0in"><p class="MsoNormal" style="border:medium none;padding:0in"><b>From: </b><a href="mailto:so@cursuri.cs.pub.ro" target="_blank">Alexandru Fazakas via so</a><br><b>Sent: </b>Wednesday, May 8, 2019 12:07 AM<br><b>To: </b><a href="mailto:so@cursuri.cs.pub.ro" target="_blank">Sisteme de Operare</a><br><b>Subject: </b>[so] [Tema 4] [Linux] Probleme pthread_create</p></div><p class="MsoNormal"><u></u> <u></u></p><div><div><div><div><div><div><p class="MsoNormal" style="margin-bottom:12pt">Salut,</p></div><p class="MsoNormal">Are cineva idee ce ar putea cauza probleme la pthread_create? Din ce am observat,</p></div><p class="MsoNormal">se creeaza un thread nou, insa functia pe care o pasez ca argument nu este rulata,</p></div><p class="MsoNormal">ci doar se termina brusc thread-ul. Am incercat sa iau instructiunile la mana prin gdb, insa</p></div><p class="MsoNormal" style="margin-bottom:12pt">cam asta se intampla cand dau next instruction prin functia de pe thread:<br>`[Switching to thread 2 (Thread 0x7ffff75c0700 (LWP 11822))]<br>#0 clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:78<br>78 ../sysdeps/unix/sysv/linux/x86_64/clone.S: No such file or directory.<br>(gdb) ni<br>79 in ../sysdeps/unix/sysv/linux/x86_64/clone.S<br>(gdb) <br>(so_scheduler.c, 182): pthread_join error: Success<br>`</p></div><div><p class="MsoNormal">Intr-un final, programul crapa la pthread_join, pentru ca nu exista niciun thread cu id-ul</p></div><div><p class="MsoNormal" style="margin-bottom:12pt">pe care incerc eu sa fac join. Suna cumva cunoscuta situatia cuiva?</p></div><div><p class="MsoNormal" style="margin-bottom:12pt">In caz ca vrea cineva sa arunce o privire pe Gitlab, contul LDAP este alexandru.fazakas.</p></div><div><p class="MsoNormal">Seara faina,</p></div></div><p class="MsoNormal">Alex</p><p class="MsoNormal"><u></u> <u></u></p></div></div></blockquote></div>
</blockquote></div>