Cześć, pracuję od prawie 2 lat jako java/android developer i powoli myślę o zmianie pracy, bo już zbyt wiele się nie uczę nowego i powoli obecna wypłata staje się niezbyt satysfakcjonująca. Poza ogarnięciem githuba na wyższy poziom(nowy projekt z nauczonymi featurami i architekturami, refaktor staych projektów) i powtórzeniem sobie teorii na rozmowę chciałbym też ogarnąć wielowątkowość.
Zdałem sobie sprawę, że do tej pory w pracy nie musiałem nic sam implementować - wszystkie akcje synchroniczne robiłem na wbudowanych mechanizmach, więc na ten temat zbyt wiele wiedzy nie musiałem mieć. Niby coś mnie kiedyś na rozmowach pytali o sekcje krytyczne, ale to raczej proste pytania były i ogarnąłem. No ale brak pracy z taką jawną wielowątkowością nie wpłynął zbyt dobrze na moje umiejętności i wiedzę w tej dziedzinie. Czy warto mocniej to podszlifować czy raczej używa się wbudowanych mechanizmów ?
Zacząłem sobie czytać o wątkach z Java Podstawy oraz Przewodnika Zaawansowanego Programisty Horstmanna, ale wydaje mi się to średnio opisane. Macie jakieś dobre źródło nauki o multithreadingu ? Pewnie najlepiej się tego uczyć robiąc zadania ?
Pozdrawiam :)