18

[]下面的日志消息中的内容是什么?我在我的 iPhone 应用程序中得到了这个,我不知道消息来自哪里。我的第一个猜测是行号,但它会在哪个文件中?

2010-10-19 08:56:12.006 Encore[376:6907]
4

4 回答 4

28

第一个数字是进程 ID,第二个是日志线程的 Mach 端口。桌面示例:

2010-10-19 17:37:13.189 nc_init[28617:a0f] nc <CFNotificationCenter 0x10010d170 [0x7fff70d96f20]> - default <CFNotificationCenter 0x10010d2a0 [0x7fff70d96f20]>

(gdb) i thread
Thread 1 has current state "WAITING"
    Mach port #0xa0f (gdb port #0x4203)
    frame 0: main () at nc_init.m:10
    pthread ID: 0x7fff70ebfc20
    system-wide unique thread id: 0x167b49
    dispatch queue name: "com.apple.main-thread"
    dispatch queue flags: 0x0
    total user time: 13232000
    total system time: 16099000
    scaled cpu usage percentage: 0
    scheduling policy in effect: 0x1
    run state: 0x3 (WAITING)
    flags: 0x0
    number of seconds that thread has slept: 0
    current priority: 31
    max priority: 63
    suspend count: 0.

(gdb) p/x (int)mach_thread_self()
$1 = 0xa0f

注意 0xa0f 如何被报告为线程的 Mach 端口。

于 2010-10-19T21:41:37.963 回答
2

第一个数字是进程 ID,不确定第二个,这一行将在从应用程序打印到控制台的每一行之前。

可能NSLog(@"");是造成这种情况。

您的应用程序是在运行还是在这个阶段崩溃了?

于 2010-10-19T13:34:27.143 回答
1

正如其他人所说,第一个数字是进程 ID。第二个数字是线程 ID,至少我很确定它是什么......

于 2010-10-19T21:09:35.180 回答
0

它实际上是一个进程 ID。您可以在 GDB 控制台中看到某处应显示“[切换到进程 376]”的行。

于 2010-10-19T13:36:24.020 回答