수색…


통사론

  • dbstop 위치에있는 파일 if 식

매개 변수

매개 변수 세부
파일 .m 파일의 이름 (확장자 없음). 예. fit . 이 매개 변수는 dbstop if error dbstop if naninfdbstop if naninf 과 같은 특수 조건부 중단 점 유형을 설정하지 않는 한 (필수) 입니다.
위치 중단 점이 배치되어야하는 행 번호. 지정된 행에 실행 가능한 코드가 포함되어 있지 않으면 중단 점은 지정된 행 다음 의 첫 번째 유효한 행에 배치됩니다.
표현 부울 값으로 평가되는 모든 표현식 또는 그 조합. 예 : ind == 1 , nargin < 4 && isdir('Q:\') .

중단 점 작업

정의

소프트웨어 개발에서 중단 점 은 프로그램에서 의도적으로 멈추거나 일시 중지되는 곳으로, 디버깅 목적으로 사용됩니다.

보다 일반적으로 중단 점은 실행 중에 프로그램에 대한 지식을 얻는 수단입니다. 인터럽트 동안 프로그래머는 테스트 환경 (범용 레지스터, 메모리, 로그, 파일 등)을 검사하여 프로그램이 예상대로 작동하는지 여부를 찾습니다. 실제로 중단 점은 프로그램 실행이 중단되어야하는시기를 결정하는 하나 이상의 조건으로 구성됩니다.

- 위키 백과

MATLAB의 중단 점

자극

MATLAB에서 실행이 중단 점에서 일시 중지되면 현재 작업 영역 (일명 범위 ) 또는 호출하는 작업 영역에있는 변수를 검사 (일반적으로 수정) 할 수 있습니다.

중단 점 유형

MATLAB에서는 .m 파일에 두 가지 유형의 중단 점을 배치 할 수 있습니다.

  • 표준 (또는 " 제한되지 않은 ") 중단 점 (빨간색으로 표시됨) - 표시된 선에 도달 할 때마다 실행을 일시 중지합니다.
  • "조건부"중단 점 (노란색으로 표시됨) - 표시된 행에 도달 할 때마다 실행을 일시 중지하고 중단 점에 정의 된 조건이 true 으로 평가됩니다.

GUI의 다른 중단 점 기호

중단 점 배치

두 가지 유형의 중단 점은 여러 가지 방법으로 만들 수 있습니다.

  • MATLAB 편집기 GUI를 사용하여 행 번호 옆의 수평선을 마우스 오른쪽 버튼으로 클릭합니다.

  • dbstop 명령 사용 :

    % Create an unrestricted breakpoint:
    dbstop in file at location
    % Create a conditional breakpoint:
    dbstop in file at location if expression
    
    % Examples and special cases: 
    dbstop in fit at 99 % Standard unrestricted breakpoint.
    
    dbstop in fit at 99 if nargin==3 % Standard conditional breakpoint.
    
    dbstop if error % This special type of breakpoint is not limited to a specific file, and
                    % will trigger *whenever* an error is encountered in "debuggable" code.
    
    dbstop in file % This will create an unrestricted breakpoint on the first executable line
                   % of "file".
    
    dbstop if naninf % This special breakpoint will trigger whenever a computation result 
                     % contains either a NaN (indicates a division by 0) or an Inf
    
  • 키보드 단축키 사용 : Windows에서 표준 중단 점을 생성하기위한 기본 키는 F12입니다 . 조건부 중단 점의 기본 키는 설정되지 않습니다 .

중단 점 비활성화 및 재 활성화

중단 점을 일시적으로 무시하려면 중단 점을 비활성화하십시오. 비활성화 된 중단 점은 실행을 일시 중지하지 않습니다. 중단 점을 비활성화하는 방법에는 여러 가지가 있습니다.

  • 빨간색 / 노란색 중단 점 원을 마우스 오른쪽 단추로 클릭하고 중단 점 해제를 선택하십시오.
  • 조건부 (노란색) 중단 점을 마우스 왼쪽 버튼으로 누릅니다.
  • 편집기 탭> 중단 점> 사용 가능 \ 사용 불가능으로 설정하십시오.

중단 점 제거

모든 중단 점은 수동 또는 자동으로 제거 될 때까지 파일에 남아 있습니다. 중단 점은 MATLAB 세션을 종료 할 때 자동으로 지워집니다 (즉, 프로그램 종료). 중단 점을 수동으로 지우는 방법은 다음 중 하나입니다.

  • dbclear 명령 사용 :

    dbclear all
    dbclear in file   
    dbclear in file at location    
    dbclear if condition
    
  • 표준 중단 점 아이콘 또는 비활성화 된 조건부 중단 점 아이콘을 마우스 왼쪽 단추로 클릭하십시오.

  • 모든 중단 점을 마우스 오른쪽 버튼으로 클릭하고> 중단 점 지우기를 클릭하십시오.

  • 편집기 탭> 중단 점> 모두 지우기를 클릭하십시오.

  • R2015b 이전 버전의 MATLAB에서는 clear 명령을 사용합니다.

실행 재개

실행이 중단 점에서 일시 중지되면 프로그램을 계속 실행하는 두 가지 방법이 있습니다.

  • 현재 라인을 실행하고 다음 라인 이전에 다시 일시 정지하십시오.

    에디터 F10 1 dbstep 명령 창에서 리본> 편집기> DEBUG에서 "단계".

  • 다음 중단 점까지 실행합니다 (중단 점이 더 이상 없으면 프로그램이 끝날 때까지 실행이 진행됩니다).

    편집기에서 F12 1 dbcont 명령 창에서은, 리본> 편집기> DEBUG에서 "계속".


1 - Windows의 기본값.

MATLAB에서 호출 된 Java 코드 디버깅

개요

MATLAB 실행 중에 호출되는 Java 클래스를 디버깅하려면 두 단계를 수행해야합니다.

  1. JVM 디버깅 모드에서 MATLAB을 실행합니다.
  2. Java 디버거를 MATLAB 프로세스에 연결하십시오.

MATLAB이 JVM 디버깅 모드에서 시작되면 명령 창에 다음 메시지가 나타납니다.

JVM is being started with debugging enabled.
Use "jdb -connect com.sun.jdi.SocketAttach:port=4444" to attach debugger.

MATLAB 끝

Windows :

아래 표시된 것처럼 MATLAB 실행 파일 ( matlab.exe )에 대한 바로 가기를 만들고 끝에 -jdb 플래그를 추가하십시오.

여기에 이미지 설명을 입력하십시오.

이 바로 가기 JVM 디버깅을 사용하여 MATLAB을 실행하면 디버깅이 활성화됩니다.

또는 java.opts 파일을 작성 / 갱신 할 수도 있습니다. 이 파일은 "matlab-root \ bin \ arch"에 저장됩니다. 여기서 "matlab-root"는 MATLAB 설치 지시자이고 "arch"는 아키텍처입니다 (예 : "win32").

파일에 다음을 추가해야합니다.

-Xdebug
-Xrunjdwp:transport=dt_socket,address=1044,server=y,suspend=n

디버거 종료

IntelliJ IDEA

이 디버거를 연결하려면 MATLAB에서 노출 된 포트를 사용하여 "원격 디버깅"구성을 만들어야합니다.

1 단계 : 디버그 구성 만들기

그런 다음 디버거가 시작됩니다.

2 단계 : 디버거 시작

모든 것이 예상대로 작동하면 다음 메시지가 콘솔에 표시됩니다.

모두 작동하면 로그 출력



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow