Je suis en train d'obtenir ce programme simple pour travailler sur les fenêtres, mais il se bloque:Essayer d'utiliser les threads tcl sur windows 7 résultats en violation d'accès
unsigned (__stdcall testfoo)(ClientData x) { return 0; } int main() { Tcl_ThreadId testid = 0; Tcl_CreateThread(&testid, testfoo, (ClientData) NULL, TCL_THREAD_STACK_DEFAULT, TCL_THREAD_NOFLAGS); }
J'utilise un makefile généré par cmake et la liaison par rapport à une version de Tcl 8.5.7 Je me suis compilé en utilisant Visual C++ 2008 express. Il a été compilé en utilisant msvcrt, static, threads et le nom de la bibliothèque résultante est tcl85tsx.lib. L'erreur est:
Unhandled exception at 0x77448c39 in main.exe: 0xC0000005: Access violation writing location 0x00000014.
La bibliothèque Tcl fonctionne très bien, et je peux même exécuter un exemple de script de filetage en chargeant l'extension de fil en elle. Mon hypothèse est qu'il y a quelque chose d'horriblement mal avec une violation de mémoire, mais je n'ai aucune idée de quoi. Toute aide appréciée.
Je suggère: Essayez de démarrer l'application à partir de Windbg Et regardez la pile; – whunmr
Avez-vous testé le même code sur une autre plateforme (ou même sur une version différente de Windows)? – bta