2004-10-26 Pascal Obry <obry@gnat.com>
* s-parame-mingw.adb (Default_Stack_Size): Add some comments.
* s-taprop-mingw.adb (Create_Task): Set initial stack size to 1024. On
Windows only the initial thread stack size can be set so it is good to
start we a low stack size.
The OS will adjust the size as needed.
From-SVN: r89641
-- Default_Stack_Size --
------------------------
+ -- Note that on Windows this is not really the default stack size. It
+ -- is the default used for the stack checking support but there is no
+ -- way to set the thread stack size at runtime. Only the initial thread
+ -- stack size can be specified. The real stack size limit is set at
+ -- link time. See GNU/Linker --stack=x,y option.
+
function Default_Stack_Size return Size_Type is
begin
return 20 * 1024;
Priority : System.Any_Priority;
Succeeded : out Boolean)
is
+ pragma Unreferenced (Stack_Size);
+
+ Initial_Stack_Size : constant := 1024;
+ -- We set the initial stack size to 1024. On Windows there is no way to
+ -- fix a task stack size. Only the initial stack size can be set, the
+ -- operating system will raise the task stack size if needed.
+
hTask : HANDLE;
TaskId : aliased DWORD;
pTaskParameter : System.OS_Interface.PVOID;
hTask := CreateThread
(null,
- DWORD (Adjust_Storage_Size (Stack_Size)),
+ Initial_Stack_Size,
Entry_Point,
pTaskParameter,
DWORD (Create_Suspended),