语音合成,在朗读过程中调用cancel死锁
快论文 发布于2018-01 浏览:1813 回复:7
0
收藏

调用speak线程:

cancel时死锁堆栈:

 

* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP

  * frame #0: 0x0000000182e7c0f0 libsystem_kernel.dylib`__psynch_cvwait + 8

    frame #1: 0x0000000182f92ce4 libsystem_pthread.dylib`_pthread_cond_wait$VARIANT$mp + 640

    frame #2: 0x0000000102467b28 TheLittleKing`BDS_TTS::Threads::Synchronization::AppConditionMutex::lockWhenNotFlags(this=0x00000001c40f4d80, flags=2) at AppConditionMutex.cpp:124 [opt]

    frame #3: 0x000000010240d9fc TheLittleKing`::-[BDSSpeechSynthesizer cancel](self=0x00000001c41e7a00, _cmd=) at BDSSpeechSynthesizer.mm:1538 [opt]

    frame #4: 0x00000001024001cc TheLittleKing`-[LKChatManager stopSpeeking](self=, _cmd=) at LKChatManager.m:274 [opt]

收藏
点赞
0
个赞
共7条回复 最后由用户已被禁言回复于2022-04
#8我就看看咯开始回复于2018-01

把取消放在异步线程去做不会卡死,也能取消,但不是正解

0
#7我就看看咯开始回复于2018-01

把取消放在异步线程去做不会卡死,也能取消,但不是正解

0
#6我就看看咯开始回复于2018-01

我也遇到了,求解

0
#5静心之王回复于2018-01

没看出问题

 

0
#4chenxiaoyu3回复于2018-01

在demo里试了没有这个问题好像

0
#3快论文回复于2018-01

求解决

0
#2快论文回复于2018-01

SDK version: 2.2.6 (Core: CoreTTS_1.1.0 etts: 30100)

0
TOP
切换版块