정답 : 2. The Stop button is set to the latch mechanical action, which is incompatible with local variables.
코드를 살펴보면 하나의 정지 버튼을 이용하여 두 개의 병렬 While Loop를 제어하는 코드이다.
왼쪽 루프부터 1번 While문, 2번 While문으로 나뉘었을 때 1번 루프는 정지 버튼을 그대로 조건 터미널에 와이어링하였고, 2번 루프의 경우 로컬 변수를 이용하여 조건 터미널에 와이어링 시켜주었다.
LabVIEW는 와이어링 기반의 데이터 흐름을 따라가는 코딩 방식을 기본으로 한다. 정지 버튼을 눌렀을 때 1번 루프와 2번 루프 모두 '버튼 눌림' 상태 값을 정상적으로 읽어야 루프가 종료되기에 불리언 버튼의 기계적 동작 '스위치'와 '래치' 중 '스위치'로 설정되어야지만 정상적으로 코드가 실행될 수 있다.
'래치'는 순간적으로 값이 반전되었다가 다시 돌아오는 형태의 동작이므로 LabVIEW 와이어링 기반의 코딩 방식에 어긋나는 로컬 변수를 사용할 경우 순간적인 값을 놓칠 가능성이 있다. 따라서 LabVIEW에서는 이런 에러를 방지하고자 애초에 '래치'와 '로컬 변수'를 같이 사용하면 VI 실행 버튼이 깨져 실행할 수 없게 해두었다. 따라서 문제에서는 VI가 깨진 원인을 물어보고 있으므로 2. The Stop button is set to the latch mechanical action, which is incompatible with local variables.이 정답이다.