我正在开发一个使用后台任务的WP8.1 SL应用程序(不是代理!).
我的任务是由TimerTrigger触发 - 每30分钟一次(我认为这是Windows Phone的最小间隔,对吧?).它做了很多工作,并且出于某种原因,有时它会被中断 - 也就是说,它会停在它的中间.我知道它的中间方式是因为我记录了正在发生的事情,每次任务的工作基本相同.
我昨天将应用程序部署到我的设备上以测试新的方法,一切都运行良好 - 后台任务在每次启动时都做了所有事情 - 像魅力一样工作.今天我的设备需要软复位,所以我做了(没有任何工作,它自我更新到WP8.1后不时发生).从那时起,后台任务每次都会被中断,正好在之前的方法中.
有什么想法可以导致这个?我认为它可能与软复位有关,因为 - 之前100%的成功率,之后是0%.
到目前为止我尝试过的:
我正在记录错误,我有一个try-catch周围的东西,我已经订阅了UnobservedException事件和任务的Canceled事件,我正在记录暂停计数 - 这些都没有帮助.似乎没有错误,它没有被暂停,也没有被取消.
我正在记录当前的内存使用情况,大约是16-17MB.在我的设备上,限制应该是30MB,所以我不认为这是一个问题.
我在任何地方都在调用RequestAccessAsync.我认为曾经应该足够了,但自从那次软重置问题以来,我决定把它放在其他1-2个地方,以检查是否会导致问题.嗯,它不是,或者至少没有解决它.
我不确定的是什么:
任何想法为什么我的后台任务有时会停在中间?我真的很难确定如何修复/改进应用程序,并且它会起作用.
谢谢.
我正在尝试对 Python 代码库中的类和函数依赖关系进行一些分析。我的第一步是创建一个 .csv 文件,以便使用 Pythoncsv模块和正则表达式导入 Excel。
我所拥有的当前版本如下所示:
import re
import os
import csv
from os.path import join
class ClassParser(object):
class_expr = re.compile(r'class (.+?)(?:\((.+?)\))?:')
python_file_expr = re.compile(r'^\w+[.]py$')
def findAllClasses(self, python_file):
""" Read in a python file and return all the class names
"""
with open(python_file) as infile:
everything = infile.read()
class_names = ClassParser.class_expr.findall(everything)
return class_names
def findAllPythonFiles(self, directory):
""" Find all the python files starting from a top level directory
"""
python_files = []
for root, dirs, files …Run Code Online (Sandbox Code Playgroud)