2012-01-24 28 views
10

Khi tôi sử dụng NSLog, tôi nhận được kết quả tương tự như sau:Tiền tố trong NSLog có nghĩa là gì?

2012/01/24 17: 05: 32: 860 App [21.856: 71.939] {khai thác gỗ goes here}

tôi nhận ra rằng ' 2012-01-24 17: 05: 32: 860 'là ngày,' Ứng dụng 'là tên ứng dụng, nhưng tôi không biết đầu mối' [21856: 71939] 'có nghĩa là gì. Ai đó có thể lấp đầy tôi vào đó là cái gì và nó được tạo ra ở đâu? Tất cả những gì tôi đang cố gắng làm là ghi nhật ký để xếp hàng độc đáo để dễ đọc, nhưng '[21856: 71939]' thay đổi theo các chữ số đủ để làm xáo trộn mọi nỗ lực liên kết. Nếu tôi biết các con số trong '[21856: 71939]' được tạo ra như thế nào, tôi có thể thêm khoảng trống khi cần thiết để làm cho nó thẳng hàng, nhưng đó là ý tưởng duy nhất của tôi vào thời điểm này.

Bất kỳ trợ giúp sẽ được nhiều đánh giá cao :)

+0

Tôi cũng tò mò về điều này. –

Trả lời

14

21856 là id quá trình. 71939 là id luồng.

Bạn có thể tạo ra phần này của nhật ký trên của riêng bạn sử dụng:

[NSString stringWithFormat:@"[%ld,%lx]", 
    (long) getpid(), 
    (long) pthread_mach_thread_np(pthread_self())]; 

Sửa 2014/09/23:

Ít nhất trên mô phỏng trong iOS 8, số thứ hai bây giờ là số pthread_threadid_np của chuỗi.

__uint64_t threadId; 
    if (pthread_threadid_np(0, &threadId)) { 
     threadId = pthread_mach_thread_np(pthread_self()); 
    } 

    [NSString stringWithFormat:@"[%ld,%llu]", (long) getpid(), threadId] 
+1

Vẫn hợp lệ. Tuy nhiên, điều này chỉ hoạt động trên thiết bị thực tế không có trên trình mô phỏng. – batkuip

3

IIRC, các 21856 là quá trình PID, và 71939 là một số loại nhận dạng chủ đề.

0

Đó là ID chủ đề nhưng tôi thực sự không biết cách chúng được tạo.

bạn có thể lấy nó cho mình sử dụng này

pthread_mach_thread_np(pthread_self()) 

nhưng điều đó không trả lời làm thế nào bạn sẽ thiết lập nó với lót đúng. Trên ghi chú khác, khi bạn đang gỡ lỗi, hãy chuyển đến tab cuối cùng (Hiển thị nhật ký điều hướng), nhấp đúp vào Debug App, nó sẽ hiển thị độc đáo

Các vấn đề liên quan