Ich habe noch nie zuvor in Python programmiert, also entschuldige meinen Code. Ich habe dieses Skript, das in einem Terminal laufen wird, aber ich kann es nicht erreichen, um Klientenseite zu laufen. Ich führe dies in Appcelerator Titanium Anwendung. Wie auch immer, ich habe eine Fehlerbehebung durchgeführt und es scheint, dass die Threads überhaupt nicht ausgeführt werden. Ist das eine Einschränkung? weiß jemand?Kann clientseitige Python-Threads verwenden?
<script type="text/python">
import os
import sys
import Queue
import threading
class FindThread (threading.Thread):
def run (self):
running = True
while running:
if jobPool.empty():
#print '<< CLOSING THREAD'
running = False
continue
job = jobPool.get()
window.document.getElementById('output').innerHTML += os.path.join(top, name)
if job != None:
dirSearch(job)
jobPool = Queue.Queue (0)
def findPython():
#output = window.document.getElementById('output')
window.document.getElementById('output').innerHTML += "Starting"
dirSearch("/")
# Start 10 threads:
for x in xrange (10):
#print '>> OPENING THREAD'
FindThread().start()
def dirSearch(top = "."):
import os, stat, types
names = os.listdir(top)
for name in names:
try:
st = os.lstat(os.path.join(top, name))
except os.error:
continue
if stat.S_ISDIR(st.st_mode):
jobPool.put(os.path.join(top, name))
else:
window.document.getElementById('output').innerHTML += os.path.join(top, name)
window.findPython = findPython
</script>