@(对象),@{key:value},@[x1,x2,x3...]

本文介绍了在C和Objective-C中使用不同方式初始化对象的方法,包括字符数组、字典和数组的初始化。通过具体的代码示例展示了如何利用这些技术进行内存分配及对象创建。

@(对象):对象初始化

char *answer = malloc(size);//字符数组

NSString *currentMachine = @(answer);

@{key:value}:字典初始化

@[x1,x2,x3,...]:数组初始化

__int64 __fastcall sub_228560(__int64 *a1) { int v2; // w8 __int64 v3; // x20 __int64 v5; // x0 __int64 v6; // x0 __int64 v8; // [xsp+8h] [xbp-28h] __int64 v9; // [xsp+10h] [xbp-20h] _BYTE v10[12]; // [xsp+1Ch] [xbp-14h] BYREF __int64 v11; // [xsp+28h] [xbp-8h] BYREF sub_229134(&unk_A0065, 12, v10); v2 = *((_DWORD *)a1 + 280); *((_DWORD *)a1 + 280) = v2 + 1; if ( (v2 | 8) != 0xB || !*((_BYTE *)a1 + 1129) || (v9 = sub_228668(a1)) == 0 ) { sub_4DF2BC(a1 + 133); if ( !*a1 ) { sub_4DF2EC(a1 + 133); goto LABEL_8; } v3 = *(_QWORD *)(*a1 + 16); v11 = *a1; sub_22871C(a1, &v11); sub_4DF2EC(a1 + 133); v9 = v3; if ( !v3 ) { LABEL_8: v8 = 0; v9 = sub_22878C(a1); if ( !v9 ) return v8; } } v8 = v9; if ( dword_5755A4++ <= 4 ) { v5 = sub_4F6C54(); v8 = v9; if ( (unsigned int)sub_4F7874(v5, 68) ) { v6 = sub_4F6C54(); sub_4F7074(v6, v10, *((unsigned int *)a1 + 280), v9); return v9; } } return v8; } .text:0000000000228560 .text:0000000000228560 ; Attributes: bp-based frame .text:0000000000228560 .text:0000000000228560 ; __int64 __fastcall sub_228560(__int64 *) .text:0000000000228560 sub_228560 ; CODE XREF: .text:00000000001C5EC4↑p .text:0000000000228560 .text:0000000000228560 var_28 = -0x28 .text:0000000000228560 var_20 = -0x20 .text:0000000000228560 var_14 = -0x14 .text:0000000000228560 var_8 = -8 .text:0000000000228560 var_s0 = 0 .text:0000000000228560 var_s10 = 0x10 .text:0000000000228560 .text:0000000000228560 ; __unwind { .text:0000000000228560 SUB SP, SP, #0x50 .text:0000000000228564 STP X29, X30, [SP,#0x30+var_s0] .text:0000000000228568 STP X20, X19, [SP,#0x30+var_s10] .text:000000000022856C ADD X29, SP, #0x30 .text:0000000000228570 MOV X19, X0 .text:0000000000228574 ADRL X0, unk_A0065 .text:000000000022857C SUB X2, X29, #-var_14 .text:0000000000228580 MOV W1, #0xC .text:0000000000228584 BL sub_229134 .text:0000000000228588 LDR W8, [X19,#0x460] .text:000000000022858C ORR W9, W8, #8 .text:0000000000228590 ADD W8, W8, #1 .text:0000000000228594 CMP W9, #0xB .text:0000000000228598 STR W8, [X19,#0x460] .text:000000000022859C B.NE loc_2285B8 .text:00000000002285A0 LDRB W8, [X19,#0x469] .text:00000000002285A4 CBZ W8, loc_2285B8 .text:00000000002285A8 MOV X0, X19 .text:00000000002285AC BL sub_228668 .text:00000000002285B0 STR X0, [SP,#0x30+var_20] .text:00000000002285B4 CBNZ X0, loc_228608 .text:00000000002285B8 .text:00000000002285B8 loc_2285B8 ; CODE XREF: sub_228560+3C↑j .text:00000000002285B8 ; sub_228560+44↑j .text:00000000002285B8 ADD X0, X19, #0x428 .text:00000000002285BC BL sub_4DF2BC .text:00000000002285C0 LDR X8, [X19] .text:00000000002285C4 CBZ X8, loc_2285F0 .text:00000000002285C8 LDR X20, [X8,#0x10] .text:00000000002285CC SUB X1, X29, #-var_8 .text:00000000002285D0 MOV X0, X19 .text:00000000002285D4 STUR X8, [X29,#var_8] .text:00000000002285D8 BL sub_22871C .text:00000000002285DC ADD X0, X19, #0x428 .text:00000000002285E0 BL sub_4DF2EC .text:00000000002285E4 STR X20, [SP,#0x30+var_20] .text:00000000002285E8 CBNZ X20, loc_228608 .text:00000000002285EC B loc_2285F8 .text:00000000002285F0 ; --------------------------------------------------------------------------- .text:00000000002285F0 .text:00000000002285F0 loc_2285F0 ; CODE XREF: sub_228560+64↑j .text:00000000002285F0 ADD X0, X19, #0x428 .text:00000000002285F4 BL sub_4DF2EC .text:00000000002285F8 .text:00000000002285F8 loc_2285F8 ; CODE XREF: sub_228560+8C↑j .text:00000000002285F8 MOV X0, X19 .text:00000000002285FC BL sub_22878C .text:0000000000228600 STP XZR, X0, [SP,#0x30+var_28] .text:0000000000228604 CBZ X0, loc_228654 .text:0000000000228608 .text:0000000000228608 loc_228608 ; CODE XREF: sub_228560+54↑j .text:0000000000228608 ; sub_228560+88↑j .text:0000000000228608 ADRP X8, #dword_5755A4@PAGE .text:000000000022860C LDR X20, [SP,#0x30+var_20] .text:0000000000228610 LDR W9, [X8,#dword_5755A4@PAGEOFF] .text:0000000000228614 STR X20, [SP,#0x30+var_28] .text:0000000000228618 ADD W10, W9, #1 .text:000000000022861C CMP W9, #4 .text:0000000000228620 STR W10, [X8,#dword_5755A4@PAGEOFF] .text:0000000000228624 B.GT loc_228654 .text:0000000000228628 BL sub_4F6C54 .text:000000000022862C MOV W1, #0x44 ; &#39;D&#39; .text:0000000000228630 BL sub_4F7874 .text:0000000000228634 STR X20, [SP,#0x30+var_28] .text:0000000000228638 CBZ W0, loc_228654 .text:000000000022863C BL sub_4F6C54 .text:0000000000228640 LDR W2, [X19,#0x460] .text:0000000000228644 SUB X1, X29, #-var_14 .text:0000000000228648 MOV X3, X20 .text:000000000022864C BL sub_4F7074 .text:0000000000228650 STR X20, [SP,#0x30+var_28] .text:0000000000228654 .text:0000000000228654 loc_228654 ; CODE XREF: sub_228560+A4↑j .text:0000000000228654 ; sub_228560+C4↑j ... .text:0000000000228654 LDR X0, [SP,#0x30+var_28] .text:0000000000228658 LDP X20, X19, [SP,#0x30+var_s10] .text:000000000022865C LDP X29, X30, [SP,#0x30+var_s0] .text:0000000000228660 ADD SP, SP, #0x50 ; &#39;P&#39; .text:0000000000228664 RET .text:0000000000228664 ; } // starts at 228560 .text:0000000000228664 ; End of function sub_228560 .text:0000000000228664 .text:0000000000228668
12-06
crash日志: 08-19 09:26:57.321 13888 14095 F libc : Fatal signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0xb400007300000000 in tid 14095 (initCameraInfo), pid 13888 (om.oplus.camera) 08-19 09:27:02.619 17868 17868 F DEBUG : Process name is com.oplus.camera, uid is 10172, not key_process 08-19 09:27:02.620 17868 17868 F DEBUG : keyProcess: 0 08-19 09:27:02.620 17868 17868 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 08-19 09:27:02.620 17868 17868 F DEBUG : Build fingerprint: &#39;realme/RMX5253IN/RE644C:15/AP3A.240617.008/V.R4T2.2f4847c-100eb7c-100ecfe:user/release-keys&#39; 08-19 09:27:02.620 17868 17868 F DEBUG : Revision: &#39;0&#39; 08-19 09:27:02.620 17868 17868 F DEBUG : ABI: &#39;arm64&#39; 08-19 09:27:02.620 17868 17868 F DEBUG : Timestamp: 2025-08-19 09:26:57.959834776+0800 08-19 09:27:02.620 17868 17868 F DEBUG : Process uptime: 91s 08-19 09:27:02.620 17868 17868 F DEBUG : Cmdline: com.oplus.camera 08-19 09:27:02.620 17868 17868 F DEBUG : pid: 13888, tid: 14095, name: initCameraInfo >>> com.oplus.camera <<< 08-19 09:27:02.620 17868 17868 F DEBUG : uid: 10172 08-19 09:27:02.620 17868 17868 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE) 08-19 09:27:02.620 17868 17868 F DEBUG : signal 11 (SIGSEGV), code 2 (SEGV_ACCERR), fault addr 0xb400007300000000 08-19 09:27:02.620 17868 17868 F DEBUG : x0 b400007300000000 x1 0000007315411f6f x2 0000000000000000 x3 00000a3a65636172 08-19 09:27:02.620 17868 17868 F DEBUG : x4 0000000000000000 x5 8080000000000000 x6 feff093964626071 x7 7f7f7f7f7f7f7f7f 08-19 09:27:02.620 17868 17868 F DEBUG : x8 6468d103908d46de x9 6468d103908d46de x10 0000000000000002 x11 00000073b640a028 08-19 09:27:02.620 17868 17868 F DEBUG : x12 0000000000000003 x13 00000075ec9a3398 x14 0000000000000001 x15 0000000000000008 08-19 09:27:02.620 17868 17868 F DEBUG : x16 00000073155315d0 x17 0000007314f364a8 x18 000000000000005a x19 b4000073a5cdde20 08-19 09:27:02.620 17868 17868 F DEBUG : x20 0000000000000000 x21 b400007300000000 x22 b4000073a8c0d100 x23 b4000073a5cddd90 08-19 09:27:02.620 17868 17868 F DEBUG : x24 0000000000000000 x25 00000074404aa140 x26 000000748c428108 x27 000000748c428100 08-19 09:27:02.620 17868 17868 F DEBUG : x28 000000748c428110 x29 000000748c427f60 08-19 09:27:02.620 17868 17868 F DEBUG : lr 0000007314f47720 sp 000000748c427f50 pc 0000007314f364b4 pst 0000000060001000 08-19 09:27:02.620 17868 17868 F DEBUG : 21 total frames 08-19 09:27:02.620 17868 17868 F DEBUG : backtrace: 08-19 09:27:02.620 17868 17868 F DEBUG : #00 pc 00000000000b54b4 /odm/lib64/libXDocProcessSDK.so (xsdk::XDocDetector::~XDocDetector()+12) (BuildId: fc607651bf45e25a3db1441a3a35ff1c435e2a55) 08-19 09:27:02.620 17868 17868 F DEBUG : #01 pc 00000000000c671c /odm/lib64/libXDocProcessSDK.so (xsdk::QuadDetector::Init(unsigned char const*, unsigned long, int)+168) (BuildId: fc607651bf45e25a3db1441a3a35ff1c435e2a55) 08-19 09:27:02.620 17868 17868 F DEBUG : #02 pc 00000000000100fc /odm/lib64/libSuperTextWrapper.so (xnnInitedByByte+116) (BuildId: ae32866688049b7aabb663b359b94fc994d77513) 08-19 09:27:02.620 17868 17868 F DEBUG : #03 pc 000000000001329c /product/lib64/libXDocProcessSDK-jni.so (Java_com_youtu_ocr_docprocess_DocDetector_xnnInitedByByte+88) (BuildId: d3b90c13fb4c862fc9f126b36f9cd89338665a31) 08-19 09:27:02.620 17868 17868 F DEBUG : #04 pc 00000000000c91cc /system/framework/arm64/boot.oat (art_jni_trampoline+124) (BuildId: 8a0148760ce648144175623fdb3235cc5d70660c) 08-19 09:27:02.620 17868 17868 F DEBUG : #05 pc 0000000000782420 /apex/com.android.art/lib64/libart.so (nterp_helper+4016) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.620 17868 17868 F DEBUG : #06 pc 000000000012b588 /product/app/OplusCamera/OplusCamera.apk (com.oplus.ocs.camera.SuperTextHelper.xnnInitedByByte+4) 08-19 09:27:02.620 17868 17868 F DEBUG : #07 pc 00000000007823c4 /apex/com.android.art/lib64/libart.so (nterp_helper+3924) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #08 pc 00000000000a5be2 /product/app/OplusCamera/OplusCamera.apk (com.oplus.camera.feature.sticker.ui.n.run+722) 08-19 09:27:02.621 17868 17868 F DEBUG : #09 pc 00000000007831e4 /apex/com.android.art/lib64/libart.so (nterp_helper+7540) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #10 pc 00000000000efede /product/app/OplusCamera/OplusCamera.apk (d6.g$a.run+50) 08-19 09:27:02.621 17868 17868 F DEBUG : #11 pc 0000000000338070 /system/framework/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor.runWorker+784) (BuildId: 8a0148760ce648144175623fdb3235cc5d70660c) 08-19 09:27:02.621 17868 17868 F DEBUG : #12 pc 0000000000334338 /system/framework/arm64/boot.oat (java.util.concurrent.ThreadPoolExecutor$Worker.run+56) (BuildId: 8a0148760ce648144175623fdb3235cc5d70660c) 08-19 09:27:02.621 17868 17868 F DEBUG : #13 pc 00000000001bb790 /system/framework/arm64/boot.oat (java.lang.Thread.run+64) (BuildId: 8a0148760ce648144175623fdb3235cc5d70660c) 08-19 09:27:02.621 17868 17868 F DEBUG : #14 pc 0000000000368774 /apex/com.android.art/lib64/libart.so (art_quick_invoke_stub+612) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #15 pc 0000000000353f24 /apex/com.android.art/lib64/libart.so (art::ArtMethod::Invoke(art::Thread*, unsigned int*, unsigned int, art::JValue*, char const*)+132) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #16 pc 0000000000947748 /apex/com.android.art/lib64/libart.so (art::detail::ShortyTraits<(char)86>::Type art::ArtMethod::InvokeInstance<(char)86>(art::Thread*, art::ObjPtr<art::mirror::Object>, art::detail::ShortyTraits<>::Type...)+60) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #17 pc 0000000000636e80 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallback(void*)+1344) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #18 pc 0000000000636930 /apex/com.android.art/lib64/libart.so (art::Thread::CreateCallbackWithUffdGc(void*)+8) (BuildId: 4ccb65ae9ac5ad5da3af5a342d5b0b92) 08-19 09:27:02.621 17868 17868 F DEBUG : #19 pc 00000000000a67a4 /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*)+196) (BuildId: b963824e1119e1e9ec07440f1ee81f14) 08-19 09:27:02.621 17868 17868 F DEBUG : #20 pc 0000000000097b20 /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: b963824e1119e1e9ec07440f1ee81f14) android日志: 行 236711: 08-19 09:27:02.215 13888 13888 V OCAM_PreviewExceptionProcessor: prePostPreviewException delay: 5000 行 236711: 08-19 09:27:02.215 13888 13888 V OCAM_PreviewExceptionProcessor: prePostPreviewException delay: 5000 行 237467: 08-19 09:27:02.326 13888 14751 E CameraUnit, Camera2Impl: checkSmaWireStatusAndModuleIdArrived, key does not exist: java.lang.IllegalArgumentException: Could not find tag for key &#39;com.oplus.double.ois.wirecutoff.detection.sn&#39;) 行 238996: 08-19 09:27:02.716 18002 18002 D AEE_AED : Duplicated exception, cnt = 2238997: 08-19 09:27:02.716 18002 18002 D AEE_AED : Last exception time: 1755541196 行 239224: 08-19 09:27:02.749 18002 18002 I AEE_AED : $** *** *** *** *** *** *** *** Exception *** *** *** *** *** *** *** **$ 行 239854: 08-19 09:27:02.888 01383 18049 E ifunc_camsv: [vendor/mediatek/proprietary/hardware/mtkcam/drv/src/isp/isp_6s/imageio/drv/cam/isp_function_camsv.cpp, waitBufReady, line1155] ERROR: [0x9]:, m_buf_cnt(0), waitbufready fail is caused by no enque (waitBufReady){#1155:vendor/mediatek/proprietary/hardware/mtkcam/drv/src/isp/isp_6s/imageio/drv/cam/isp_function_camsv.cpp} 行 240135: 08-19 09:27:02.985 18002 18002 I AEE_AED : Exception Log Time:[Tue Aug 19 09:27:02 CST 2025] [70030.923036] 行 240137: 08-19 09:27:02.985 18002 18002 I AEE_AED : Exception Class: Native (NE) 行 240138: 08-19 09:27:02.985 18002 18002 I AEE_AED : Exception Type: SIGSEGV 行 240145: 08-19 09:27:02.986 18002 18002 I AEE_AED : $** *** *** *** *** *** *** *** Exception *** *** *** *** *** *** *** **$ 行 240337: 08-19 09:27:03.083 01733 18054 W AES : Exception Log handling...240370: 08-19 09:27:03.088 01733 18054 D AES : ExceptionLog: notify aed, process:com.oplus.camera pid:13888 cause:system_app_native_crash 行 240524: 08-19 09:27:03.109 13888 14798 V OCAM_PreviewExceptionProcessor: removePreviewException 行 240524: 08-19 09:27:03.109 13888 14798 V OCAM_PreviewExceptionProcessor: removePreviewException 行 240884: 08-19 09:27:03.252 01733 01883 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 241592: 08-19 09:27:03.623 13888 13888 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 241637: 08-19 09:27:03.631 02552 02552 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 241757: 08-19 09:27:03.695 01383 18049 E ifunc_camsv: [vendor/mediatek/proprietary/hardware/mtkcam/drv/src/isp/isp_6s/imageio/drv/cam/isp_function_camsv.cpp, waitBufReady, line1155] ERROR: [0x9]:, m_buf_cnt(0), waitbufready fail is caused by no enque (waitBufReady){#1155:vendor/mediatek/proprietary/hardware/mtkcam/drv/src/isp/isp_6s/imageio/drv/cam/isp_function_camsv.cpp} 行 241785: 08-19 09:27:03.696 13888 13888 V OCAM_PreviewExceptionProcessor: removePreviewException 行 241785: 08-19 09:27:03.696 13888 13888 V OCAM_PreviewExceptionProcessor: removePreviewException 行 242241: 08-19 09:27:03.765 15375 15375 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 242466: 08-19 09:27:03.821 01733 01887 D callGcDesupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 242477: 08-19 09:27:03.824 02276 02276 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243654: 08-19 09:27:04.292 15375 15375 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243662: 08-19 09:27:04.298 02276 02276 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243671: 08-19 09:27:04.307 13888 13888 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243692: 08-19 09:27:04.322 02552 02552 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243871: 08-19 09:27:04.443 02552 02552 D OplusGcSupressionExtImpl: callGcSupression : java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243902: 08-19 09:27:04.451 02552 02552 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 243912: 08-19 09:27:04.452 02552 02552 D OplusGcSupressionExtImpl: callGcDesupression : java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 244302: 08-19 09:27:04.713 18094 18094 D OplusActivityThreadExtImpl: java.lang.NoSuchMethodException: dalvik.system.VMRuntime.SupressionGC [int, int] 行 244306: zv69jrUu7c:0 android.view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1.run:0 android.os.Handler.handleCallback:995 android.os.Handler.dispatchMessage:105 android.os.Looper.loopOnce:288 android.os.Looper.loop:393 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.startWatching$lambda$2:15 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.gda:1244306: .view.InsetsAnimationThreadControlRunner$1$$ExternalSyntheticLambda1.run:0 android.os.Handler.handleCallback:995 android.os.Handler.dispatchMessage:105 android.os.Looper.loopOnce:288 android.os.Looper.loop:393 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.startWatching$lambda$2:15 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.gda:1244306: :0 android.os.Handler.handleCallback:995 android.os.Handler.dispatchMessage:105 android.os.Looper.loopOnce:288 android.os.Looper.loop:393 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.startWatching$lambda$2:15 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.gda:1244306: r.handleCallback:995 android.os.Handler.dispatchMessage:105 android.os.Looper.loopOnce:288 android.os.Looper.loop:393 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.startWatching$lambda$2:15 com.android.launcher.monitor.exception.MainThreadExceptionMonitor.gda:1244340: 08-19 09:27:04.769 13888 13888 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 行 244363: 08-19 09:27:04.784 18094 18110 D OplusAppHeapManager: java.lang.NoSuchMethodException: dalvik.system.VMRuntime.updateProcessValue [int, int, int] 行 244409: 08-19 09:27:04.800 18094 18094 D callGcSupression: java.lang.NullPointerException: Attempt to invoke virtual method &#39;java.lang.Object java.lang.reflect.Method.invoke(java.lang.Object, java.lang.Object[])&#39; on a null object reference 请排查问题
09-05
04-01 01:03:11.925 9955 9955 F DEBUG : Process name is com.oplus.camera, uid is 10130, not key_process 04-01 01:03:11.925 9955 9955 F DEBUG : keyProcess: 0 04-01 01:03:11.925 9955 9955 F DEBUG : *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 04-01 01:03:11.925 9955 9955 F DEBUG : Build fingerprint: &#39;OPPO/PKW110/OP5DF5L1:15/AP3A.240617.008/V.1d31577-2-41a0:user/release-keys&#39; 04-01 01:03:11.925 9955 9955 F DEBUG : Revision: &#39;0&#39; 04-01 01:03:11.925 9955 9955 F DEBUG : ABI: &#39;arm64&#39; 04-01 01:03:11.925 9955 9955 F DEBUG : Timestamp: 2025-04-01 01:03:10.438450155+0800 04-01 01:03:11.925 9955 9955 F DEBUG : Process uptime: 18s 04-01 01:03:11.926 9955 9955 F DEBUG : Cmdline: com.oplus.camera 04-01 01:03:11.926 9955 9955 F DEBUG : pid: 9051, tid: 9055, name: HeapTaskDaemon >>> com.oplus.camera <<< 04-01 01:03:11.926 9955 9955 F DEBUG : uid: 10130 04-01 01:03:11.926 9955 9955 F DEBUG : tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE) 04-01 01:03:11.926 9955 9955 F DEBUG : signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x0000000000000010 04-01 01:03:11.926 9955 9955 F DEBUG : Cause: null pointer dereference 04-01 01:03:11.926 9955 9955 F DEBUG : x0 b4000076b27aa680 x1 b4000077eba8e000 x2 00000077ebb3b800 x3 0000000000000003 04-01 01:03:11.926 9955 9955 F DEBUG : x4 00000000000000f9 x5 00000077f3b20a82 x6 0000000000000031 x7 7f7f7f7f7f7f7f7f 04-01 01:03:11.926 9955 9955 F DEBUG : x8 0000000000000000 x9 9dde73fcc9dc7b7b x10 0000000000000200 x11 0000000000000001 04-01 01:03:11.926 9955 9955 F DEBUG : x12 00000077f3b20eb0 x13 0000000000000043 x14 b4000077f2c65710 x15 00000000ffffffa5 04-01 01:03:11.926 9955 9955 F DEBUG : x16 00000078dcde0f10 x17 00000078dcd706e0 x18 00000077ef5a0000 x19 b4000077eba8e000 04-01 01:03:11.926 9955 9955 F DEBUG : x20 b40000783f719b00 x21 b40000783f719b08 x22 b4000076b27aa680 x23 b4000077eb
04-03
这个错误信息“KeyError: &#39;Duplicate keys in Model.addVars()&#39;”通常出现在使用PuLP库进行线性规划时。错误的原因是Model.addVars()方法中传入了重复的键。以下是一些可能的原因和解决方法: 1. **重复的变量名**: 确保在调用Model.addVars()时,传入的变量名是唯一的。重复的变量名会导致这个错误。 2. **数据结构问题**: 检查传入的数据结构,确保没有重复的键。例如,如果使用字典或列表来生成变量,确保这些数据结构中没有重复的键。 3. **生成变量的逻辑问题**: 如果变量名是通过某种逻辑生成的,检查生成变量的逻辑,确保没有逻辑错误导致重复的变量名。 以下是一个示例代码,展示了如何正确地使用Model.addVars()方法: ```python import pulp # 创建一个线性规划问题 prob = pulp.LpProblem("Example Problem", pulp.LpMinimize) # 定义变量,确保没有重复的键 variables = [&#39;x1&#39;, &#39;x2&#39;, &#39;x3&#39;] var_dict = pulp.LpVariable.dicts("var", variables, cat=&#39;Continuous&#39;) # 添加目标函数 prob += pulp.lpSum([var_dict[i] for i in variables]) # 添加约束条件 prob += var_dict[&#39;x1&#39;] + var_dict[&#39;x2&#39;] >= 10 prob += var_dict[&#39;x2&#39;] + var_dict[&#39;x3&#39;] >= 8 # 求解问题 prob.solve() # 输出结果 for v in prob.variables(): print(v.name, "=", v.varValue) ``` 在这个示例中,变量名是唯一的,因此不会引发KeyError错误。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值