From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII Path: g2news2.google.com!postnews.google.com!t13g2000yqt.googlegroups.com!not-for-mail From: sjw Newsgroups: comp.lang.ada Subject: Re: Maping of Ada tasks on the plateforme OS threads model Date: Sun, 28 Jun 2009 09:31:35 -0700 (PDT) Organization: http://groups.google.com Message-ID: <2b0f1f6b-51b2-45be-bcd9-85f2d6a389d9@t13g2000yqt.googlegroups.com> References: <31491d36-18ec-4da4-b1a6-1914d0867492@b14g2000yqd.googlegroups.com> NNTP-Posting-Host: 82.20.239.89 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable X-Trace: posting.google.com 1246206695 17364 127.0.0.1 (28 Jun 2009 16:31:35 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Sun, 28 Jun 2009 16:31:35 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: t13g2000yqt.googlegroups.com; posting-host=82.20.239.89; posting-account=_RXWmAoAAADQS3ojtLFDmTNJCT0N2R4U User-Agent: G2/1.0 X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_5_7; en-us) AppleWebKit/530.18 (KHTML, like Gecko) Version/4.0.1 Safari/530.18,gzip(gfe),gzip(gfe) Xref: g2news2.google.com comp.lang.ada:6685 Date: 2009-06-28T09:31:35-07:00 List-Id: On Jun 28, 1:35=A0am, Hibou57 (Yannick Duch=EAne) wrote: > As things are 1) going fine with this thread model and as 2) the > application gonna be more complex than it is actually, I was thinking > about 1) keep the same low level thread model 2) while using Ada for > further developpement to have a cleaner and more readable design. My experience isn't extensive but I've certainly regretted using C++ for an application whose threading got more complex than we had planned originally. If you are using GNAT, be aware of GNAT.Threads; on some operating systems (VxWorks, for instance) you must call GNAT.Threads.Register_Thread in Ada code called (via C, for example) from an OS thread before you do anything involving the RTS (string catenation, ...). Other compilers will have their own way of dealing with this.