Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.118.30.253] |
|
Сообщ.
#1
,
|
|
|
1. Имеется Win32 приложение EXE которое имеет основной поток GUI и дополнительный.
2. Взаимодействие с питоном происходит через Python27.dll 3. При запуске приложения в основном потоке делается: Py_SetProgramName("11111"); /* optional but recommended */ Py_Initialize(); 4. При разрушении приложения делается Py_Finalize(); 5. В дополнительном потоке загружается скрипт и производится его выполнение(бесконечный цикл скрипта) ThreadFunc { <<< Star WinAPI thread >>> ............ PyObject* PyFileObject = PyFile_FromString("Mytest.py", "r"); PyRun_SimpleFile(PyFile_AsFile(PyFileObject), "Mytest.py"); ............ <<< Exit WinAPI thread >>> } Mytest.py import time, re, random print ('test script') while True : i = 1 while i < 80 : i = i+1 for k in range (0, 10) : idx = (i+k) % 10 if k < 3 : print ('step 1') else : print ('step 2') time.sleep(5.0) Вопрос, как завершить выполнение Python скрипта чтобы PyRun_SimpleFile возвратила управление и был произведен выход из ThreadFunc ???? |