求助,oc关于多线程的问题,请帮忙看下,快崩溃了

polly_polly 2017-06-21 02:08:44
本人刚接触oc, 是这样的,我现在用oc做了一个mac桌面测试软件,定义了一个父类,点击按钮,创建一个线程读写串口数据(c语言写的)

有多个子类继承自该父类,只是串口编号不一样,其他功能一样。

现在现象是,多个子类开启多个线程后,线程里面某些值莫名奇妙的改变了,互相之间有干扰,但是线程函数内部都是局部变量啊。。。。

有哪位高人指点一下,不胜感激。
...全文
169 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
polly_polly 2017-06-23
  • 打赏
  • 举报
回复
谢谢回复,问题已经找到了,在线程里面调用了c的strok字符串分割函数,该函数是线程不安全的,不可重入,改为oc NSString的处理方式,就好了
dirdirdir3 2017-06-22
  • 打赏
  • 举报
回复
确定没有全局变量?有可能会干扰到的
polly_polly 2017-06-21
  • 打赏
  • 举报
回复
父类里面定义了一个NSThread* m_thrdTest 定义了线程处理函数 - (void) thrdProcessFunc 在按钮事件中启用线程 m_thrdTest = [[NSThread alloc] initWithTarget:self selector:@selector(thrdProcessFunc) object:nil ]

29,027

社区成员

发帖
与我相关
我的任务
社区描述
主要讨论与iOS相关的软件和技术
社区管理员
  • iOS
  • 大熊猫侯佩
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧