A debugging method, applied to a target machine in a remote debugging system, wherein the target machine comprises a multi-core processor, and the method comprises: stopping running, by a core A of the multi-core processor after completing execution of a processing routine of a preset event, and sending a running stop signal to other cores in a process of stopping running, wherein the running stop signal is used to instruct the other cores to stop running, the other cores refer to all cores that are located in the multi-core processor and that belong to a same logical group as the core A, and the preset event is a kernel mode code processing function or a user mode code processing function; after receiving a first stop termination instruction and resuming running, executing, by the core A, a debugging information collection function to collect debugging information of the preset event, and stopping running after completing the execution of the debugging information collection function, wherein the first stop termination instruction is sent by a debugging apparatus in the remote debugging system after the debugging apparatus determines that the core A stops running and that a reason that the core A stops running is a reason other than the preset event; after receiving a second stop termination instruction and resuming running, sending, by the core A, a running resumption instruction to the other cores, wherein the running resumption instruction is used to instruct the other cores to resume running, and the second stop termination instruction is sent by the debugging apparatus after the debugging apparatus sets a preset pending breakpoint as an operation object of the preset event according to the debugging information of the preset event; and knocking, by the core A, the pending breakpoint in a process of running the operation object of the preset event, so as to enter a debugging state. stopping running, by a core A of the multi-core processor after completing execution of a processing routine of a preset event, and sending a running stop signal to other cores in a process of stopping running, wherein the running stop signal is used to instruct the other cores to stop running, the other cores refer to all cores that are located in the multi-core processor and that belong to a same logical group as the core A, and the preset event is a kernel mode code processing function or a user mode code processing function; after receiving a first stop termination instruction and resuming running, executing, by the core A, a debugging information collection function to collect debugging information of the preset event, and stopping running after completing the execution of the debugging information collection function, wherein the first stop termination instruction is sent by a debugging apparatus in the remote debugging system after the debugging apparatus determines that the core A stops running and that a reason that the core A stops running is a reason other than the preset event; after receiving a second stop termination instruction and resuming running, sending, by the core A, a running resumption instruction to the other cores, wherein the running resumption instruction is used to instruct the other cores to resume running, and the second stop termination instruction is sent by the debugging apparatus after the debugging apparatus sets a preset pending breakpoint as an operation object of the preset event according to the debugging information of the preset event; and knocking, by the core A, the pending breakpoint in a process of running the operation object of the preset event, so as to enter a debugging state.