Max Vlasov wrote:
> my static linking with Delphi for 3.7.8 version now complains about
> _beginthreadex_/_endthreadex_.
> Quick search shows than everywhere there's a recommendation to use these
> functions instead of API CreateThread if one plans to use Visual c run-time
> (msvcrt).

Well, by default, SQLite uses the C runtime.

> All my previous linking with sqlite was based on hand-made equivalent
> function for every static link to external (non-dll) functions so my
> programs never used msvcrt.

I just use the actual C compiler's functions for most of those, and
SQLITE_WIN32_MALLOC; very few wrappers remain.

_begin/endthreadex() are just thin wrappers about the Win32 functions;
whatever the C RTL does (for thread-local storage etc.) is not needed
by SQLite:

// untested
function __beginthreadex(security_attr: Pointer; stksize: Longword; start: 
Pointer; arg: Pointer; create_flags: Longword; out thread_id: Longword): 
Longword; cdecl;
begin
  Result := CreateThread(security_attr, stksize, start, arg, create_flags, 
thread_id);
end;

procedure __endthreadex(thread_retval: Longword); cdecl;
begin
  ExitThread(thread_retval);
end;


Regards,
Clemens
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to