2016-11-19 6 views
-1

私はSwiftアプリケーションを開発しています。バックグラウンド接続にソケットを使用しています。しかし、私はそれを使用しようとすると、私は、このエラーを取得する知っている:それはまた、 "スレッド:信号SIGABRT" を示しSwift/Objective-C backgroundタスク

libsystem_kernel.dylib`__pthread_kill: 
0x11329edd0 <+0>: movl $0x2000148, %eax   ; imm = 0x2000148 
0x11329edd5 <+5>: movq %rcx, %r10 
0x11329edd8 <+8>: syscall -> 0x11329edda <+10>: jae 0x11329ede4    ; <+20> 
0x11329eddc <+12>: movq %rax, %rdi 
0x11329eddf <+15>: jmp 0x113297d6f    ; cerror_nocancel 
0x11329ede4 <+20>: retq 
0x11329ede5 <+21>: nop  
0x11329ede6 <+22>: nop  
0x11329ede7 <+23>: nop  

.Hereを私はメソッドを呼び出します。

let x:ComObwareAlifstoPostConnection = ComObwareAlifstoPostConnection() 
    DispatchQueue.global(qos: .background).async { 
     x.connect() 
     let y = x.getPostsWith("username", with: "password", with: "15000000000000", with: "down", with: "0") 

     DispatchQueue.main.async { 

     } 
    } 

そして、ここにObjective-Cクラス(J2ObjcでJavaに変換)です。

ここでエラーが発生する可能性がありますか?それ以外の方法でも動作します。

答えて

0

Xcodeで、またはコマンドラインを使用する場合は、Cコンパイラ(clang)の "-g"フラグを使用して、デバッグを有効にしてビルドします。次に、Xcodeのデバッガで(またはlldbを使ってコマンドラインから)実行します。あなたのアプリケーションが異常終了すると、あなたが列挙したpkillコードで壊れるはずですが、スタックフレーム( "up"コマンド)を上に移動して、どのステートメントを参照できるか