jim@tct.uucp (Jim Kunzman) (02/15/90)
Having just survived an initial encounter with OS/2, I found that I quite liked working with threads. Although I've owned an Amiga 1000 for five years, I find that I'm very ignorant about programming in the Amiga environment. My question is "Does AmigaDos support multiple threads within a process like (or unlike) OS/2?" -- Jim Kunzman at ComDev/TCT <jim@tct.uucp>, <uunet!ateng!tct!jim> "!(This space intentionally left blank.)"
peter@sugar.hackercorp.com (Peter da Silva) (02/15/90)
In article <25D99900.51AD@tct.uucp> jim@tct.uucp (Jim Kunzman) writes: > My question is "Does AmigaDos support multiple threads within > a process like (or unlike) OS/2?" My answer is "mu". Or more exactly, AmigaOS tasks are already low overhead execution units like threads. If you want even lighter weight objects, cut your own coroutines in C. It's fairly easy. -- _--_|\ Peter da Silva <peter@sugar.hackercorp.com>. / \ \_.--._/ I haven't lost my mind, it's backed up on tape somewhere! v "Have you hugged your wolf today?" `-_-'
p554mve@mpirbn.UUCP (Michael van Elst) (02/18/90)
In article <25D99900.51AD@tct.uucp> jim@tct.uucp (Jim Kunzman) writes: > >Having just survived an initial encounter with OS/2, I found that I quite >liked working with threads. Although I've owned an Amiga 1000 for five >years, I find that I'm very ignorant about programming in the Amiga >environment. My question is "Does AmigaDos support multiple threads within >a process like (or unlike) OS/2?" A direct answer: NO. BUT ! Where did the need for threads origin from. It's mereley the overhead introduced to process switching on some operating systems. If there would be no cost, you can be happy with processes and semaphores (the latter if you identify threads with _atomic_ actions). Since the Amiga OS doesn't have this overhead due to lack of memory mapping, resource tracking, etc..., you can just use processes to do your work. On the other side, most things in the Amiga OS is done via message passing which operates almost asynchronous. Therefore many application that needs multiple processes (or threads to be efficient) aren't needed. Of course you have to adapt for this structure. BTW, last year there had been much discussion about Matt Dillons light weight processes (or what it has been called). What's the state of this project ? Would it be usable for 'thread'-like programming ? Michael van Elst uunet!unido!mpirbn!p554mve