( bzt | 2024. 08. 25., v – 17:29 )

Elhiszem, hogy 'bzt értelemben' szálak, de hagyományos értelemben nem

A TE definíciódról beszéltem, ami így hangzott: "egyes processek -- az általános szabálytól eltérően -- közös címtartományban vannak, és osztoznak egyes erőforrásokon". Ebből mi nem igaz a signal handlerekre?
A főprogrammal közös címtérben vannak, azzal erőforrásokat osztanak meg, és attól függetlenül futnak ugyanabban a processzben.

nincsenek alávetve az ütemezésnek és nem mondhatnak le a CPU-ról (yield).

Ezeknek a fogalmaknak semmi köze a többszálúsághoz, ezek a multitasking hatáskörébe tartoznak. Hogy blokkolódik-e a fő szál vagy sem, míg a signal handler végez, attól függetlenül a fő szál és a signal handler szála két, egymástól független szál.

Pont, ahogy írtam: "többszálúság nélkül nincs multitasking se.", és "minden multitask egyben kötelezően multithread is, de nem minden multithread multitask". A signal handler tökéletes példája ez utóbbinak.