首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Brew >

在动态扩展里面调用ISHell_settimer设置的回调函数调用不到解决方法

2012-02-15 
在动态扩展里面调用ISHell_settimer设置的回调函数调用不到如题,写了一个动态的应用,还有一个动态的扩展,

在动态扩展里面调用ISHell_settimer设置的回调函数调用不到
如题,写了一个动态的应用,还有一个动态的扩展,动态的应用调用动态的扩展接口,在扩展里面用ISELL_Settimer设置一个定时器,时间片到了之后调用相应的函数,发现这个函数总是调用不到,有没有高人指导一下,谢谢!

[解决办法]
有以下三个原因,1、调用IShell_SetTimer这个函数不在应用的上下文环境中。2、Timer还处在pending状态时相同的IShell_SetTimer又被重复调用。3、IShell_SetTimer回调函数的数据假如是应用实例或者是扩展实例请检查此时应用或扩展是否已经被释放。
[解决办法]
怀疑是第一种情况造成的:
由于是Applet去调用Extension,由于Callback是创建在Applet相对应的栈里的,考虑是不是函数调用压栈而没有退栈,破坏了上下文环境呢。

热点排行