Поток pys60 не работает в Symbian Python

Я разрабатываю приложение sms для symbian с использованием pys60. Я создал тему для отправки смс, но там не работает.
Я хочу, чтобы эта тема работала в фоновом режиме, независимо от того, закрыто приложение или нет.
Индекс контакта - это словарь с контактными номерами и именами.

def send_sms(contact_index):
    import thread
    appuifw.note(u"entered to send sms thread")
    tid = thread.start_new_thread(send_sms_thread, (contact_index, ))
    appuifw.note(u"completed")

он вводит "введено для отправки потока смс", но не идет после этого.
функция sens_sms_thread имеет вид:

def send_sms_thread(contact_index):
    appuifw.note(u"entering the thread in sending sms in loops")
    for numbers in contact_index:
        name = contact_index[number]
        appuifw.note(u"sending sms to %s ." % name)
        messaging.sms_send(numbers, message_content, '7bit', cb, '')
        e32.ao_sleep(30)

Может кто-нибудь сказать мне, почему он не входит в эту тему, которая будет работать в фоновом режиме, независимо от того, закрыто приложение или нет?

2 ответа

Попробуйте следующий фрагмент:

if __name__=='__main__':

    th = e32.ao_callgate(Udp_recv)
    thread.start_new_thread(th,())

    for i in range(10):
        tmp = (str(i)+data)[0:10]

Udp_recv функция работает в фоновом режиме

Использовать threading модуль. ThreadСозданные этим модулем будут ждать основной поток перед выходом из процесса.

thread = threading.Thread(target=send_sms_thread, args=(contact_index,))
thread.start()

Потоки, созданные в другом месте, или с daemon атрибута не ждут.

Другие вопросы по тегам