From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: GNAT, portability between computers (win32)
Date: Thu, 11 Aug 2016 22:53:27 +0200
Date: 2016-08-11T22:53:27+02:00 [thread overview]
Message-ID: <noiokf$s5a$1@gioia.aioe.org> (raw)
In-Reply-To: 137435ce-6358-498a-ba83-a015a9a76b78@googlegroups.com
On 2016-08-11 20:12, Aurele wrote:
> Actually Dmitry, I'm using the auto init (true) feature and
> everything works great with no external GNAT dependencies.
Yes, the problem is that if your DLL has library-level tasks or timed
entry calls automatic initialization will deadlock. The offending call
is Lock_RTS. If you look at the b__libraryname.adb file generated by
gprbuild you will find there calls to the system procedures doing
library initialization. If any of them calls Lock_RTS in its body, the
DLL will freeze your program.
It hit me hard recently. Luckily I could go with manual initialization.
It is quite frustrating that GNAT does not support DLLs with full Ada.
P.S. There is no need to lock RTS under Windows because threading is
already locked when DLL is being loaded.
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2016-08-11 20:53 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-08-10 14:17 GNAT, portability between computers (win32) George J
2016-08-10 14:23 ` George J
2016-08-10 14:43 ` Dmitry A. Kazakov
2016-08-10 14:52 ` George J
2016-08-10 16:07 ` Dmitry A. Kazakov
2016-08-10 15:30 ` Aurele
2016-08-10 18:29 ` gautier_niouzes
2016-08-10 20:44 ` Aurele
2016-08-11 5:08 ` gautier_niouzes
2016-08-11 14:47 ` George J
2016-08-11 14:50 ` George J
2016-08-11 16:03 ` Dmitry A. Kazakov
2016-08-10 16:55 ` George J
2016-08-10 17:16 ` George J
2016-08-11 9:53 ` Aurele
2016-08-11 10:11 ` Pascal Obry
2016-08-11 10:17 ` Aurele
2016-08-11 13:40 ` Pascal Obry
2016-08-11 14:53 ` Aurele
2016-08-11 16:11 ` Dmitry A. Kazakov
2016-08-11 16:41 ` Aurele
2016-08-11 17:23 ` Dmitry A. Kazakov
2016-08-11 18:12 ` Aurele
2016-08-11 20:53 ` Dmitry A. Kazakov [this message]
2016-08-11 19:42 ` Aurele
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox