alibaba / wax

Wax is a framework that lets you write native iPhone apps in Lua.
http://github.com/probablycorey/wax
MIT License
1.84k stars 280 forks source link

补丁在多线程中执行的崩溃问题 #35

Closed zhudaye12138 closed 8 years ago

zhudaye12138 commented 8 years ago

在lua中重写OC函数后,若原OC函数在会在多线程调用时,且函数实例会被销毁的情况下。wax会发生崩溃

崩溃点:hookForwardInvocation函数中 代码 ((void(*)(id, SEL, id))objc_msgSend)(self, @selector(ORIGforwardInvocation:), anInvocation);

我自己的修改方法:删除 代码_lastForwardClassSelecotorKey = callClassSelectorKey;

我觉得使用_lastForwardClassSelecotorKey的逻辑似乎 是在进行多线程保护,但好像这个逻辑又没有必要, 不知道这样改对不对?