|
From: Jeremiah B. <jer...@gm...> - 2018-06-30 14:58:19
|
On both of my work computers (Windows 10 and Ubuntu 16.04, FSF and GPL
versions of GNAT), I somewhat sporadically am unable to successfully call
Gnoga.Application.Multi_Connect.End_Application. It generates an error
message mentioning a failure with the Next procedure and the server
continues to run. In all cases I am running the same exact code (though
recompiled for each combination).
I was wondering if this was something others have run into? When I looked
into the procedure, I found that it called Gnoga.Server.Connection.Stop and
inside that was the following loop:
Connection_Manager.First (ID);
while ID /= 0 loop
Close (ID);
Connection_Manager.Next (ID);
end loop;
I think what might be happening is that another part of gnoga is closing
the connection inbetween the calls to Connection_Manager.First and
Connection_Manager.Next (I see that Gnoga occasionally chooses to switch
connection IDs for my current connection, though I don't really know why).
It at least looks like a data race and seems like a plausible reason why
End_Application stops working.
Anyone have any thoughts on this?
|