【发布时间】:2015-01-29 10:37:33
【问题描述】:
我正在尝试使用钛执行上下文在主应用程序上下文和其他应用程序上下文之间生成并行代码执行。我正在使用带有 url 属性的 CreateWindow 是指“lib”文件夹中的 .js 文件。但是通过在 iOS 和 Android 设备上记录执行,似乎在应用程序主线程上执行了不同的上下文,这里没有并行性。
我的 Alloy 控制器中的新上下文触发器:
var win2 = Ti.UI.createWindow({
title: 'New Window',
url: 'thread.js',
backgroundColor:'#fff'
});
win2.open();
Ti.API.log('after open');
我的 thread.js 内容:
Ti.API.log("this is the new context");
Ti.App.fireEvent("go" , {});
while(true)
{
Ti.API.log('second context');
}
这个 while 循环显然阻塞了等待它退出的主上下文(我的 Alloy 控制器)。
关于如何在后台执行一些代码(主要是繁重的 sqlite db 访问)以使 UI 响应的任何建议? (网络工作者不是我的选择)。
【问题讨论】:
标签: multithreading titanium context-switch