오류, 버그, 질문 - 페이지 1524

 
Slawa :

무엇을 문서화할 것인가? "형제들, 긴장을 풀고 긴장을 풀지 말고 원하는대로 초기화를 해제하십시오. 개발자 허용"

예, 터미널이 닫힐 때만 문서에 이미 구체적으로 명시된 가혹한 조건이 적용됩니다. 그리고 다음 터미널 오픈 시 할당된 시간 내에 기억이 나지 않아 오픈 차트 를 집계하지 않을 수 있습니다.

그리고 이것이 그것과 어떤 관련이 있습니까?

자신의 이익을 위해 무한 루프에서 로그를 플러딩하고 로그가 얼마나 빨리 증가하는지, 64메가 이후에 중복 항목이 잘리기 시작하고 로그 시작 부분이 잘리는지 확인하십시오. 당신은 보호 부족에 대한 진술에 흥분했습니다. 우리는 오랫동안 호스팅의 모든 디스크에 점수를 매겼을 것입니다.

있는 그대로 문서화하거나 문서화한 대로 수행... 좋아, 그것은 당신에게 달려 있습니다

나는 그것을 시도하고 컴퓨터의 상태를 위험에 빠뜨렸고 충전 속도는 ~ 1.5Gb / min입니다. 하지만 이미 만족스러운 4-ki와 달리 터미널이 동시에 걸리지 않습니다)

 
-Aleks- :

휴, 그래서 이 버그는 반환되지 않았습니다. 터미널을 안전하게 닫고 모든 차트가 저장되었는지 확인할 수 있습니다.

현재 터미널이 닫히면 3초 후에 프로그램이 강제 종료된다고 합니다. 이것이 현재 작동하는 방식이며 계속 작동할 것입니다. 그들은 터미널을 종료하지 않고 차트에서 프로그램이 제거될 때 강제 종료를 반환하고 싶지 않습니다.
 
Slawa :

원래는 루프 표시기에 관한 것이었습니다. 절대 권장하지 않습니다. 일러스트로도

루프 표시기가 아니라 주기 내에서 IsStopped 확인 이 없는 표시기에 관한 것일 가능성이 더 큽니다. 복잡한 지표를 구축하는 주기가 길 수 있기 때문입니다. 물론 이 질문은 무한 루프 때문이 아니라 소스 코드를 게시할 수 없을 뿐더러 번거롭다는 점에서 무의미합니다.
 

모든 지표는 적어도 하나의 주기를 사용합니다.

IsStopped 검사가 없는 루프는 이 루프를 잠재적으로 무한대로 만듭니다. 어레이에 백만 가격 데이터가 있을 수 있고 각 반복이 최적이 아닌 상태로 기록될 수 있기 때문입니다.

의도적으로 무한 루프를 배치하는 프로그래머 문서의 어떤 풍자에도 호소해서는 안 됩니다.

В одном потоке с индикаторами также последовательно выполняются остальные действия по данному символу - обработка тиков и синхронизация истории. Это означает, что если в индикаторе выполняется бесконечное действие, все остальные события по его символу никогда не выполнятся.

의식이 있는 프로그래머는 이 경우 지표의 효과에 대한 책임이 문서가 아니라 자신이라는 것을 즉시 이해할 것입니다. 게다가 이미 이 주제에 대해 많은 토론이 있었고 하나 이상의 기사가 작성되었습니다.

 
Slawa :

의식이 있는 프로그래머는 이 경우 지표의 효과에 대한 책임이 문서가 아니라 자신이라는 것을 즉시 이해할 것입니다. 게다가 이미 이 주제에 대해 많은 토론이 있었고 하나 이상의 기사가 작성되었습니다.

그렇군요. 저는 IsStopped 체크 를 하지 않았기 때문에 복잡한 인디케이터의 생성을 방해하는 문제가 전적으로 제 잘못임을 고백합니다. 그러나 다른 한편으로 나는 프로그램의 작업과 그 문서가 일치해야 한다는 사실에 익숙합니다.
 
Ilya Malev :
현재 터미널이 닫히면 3초 후에 프로그램이 강제 종료된다고 합니다. 이것이 현재 작동하는 방식이며 계속 작동할 것입니다. 그들은 터미널을 종료하지 않고 차트에서 프로그램이 제거될 때 강제 종료를 반환하고 싶지 않습니다.
흠, 나는 네 가지에 대해 이야기했습니다. 지금은 모든 것을 올바르게 완료하고 닫는 것으로 보이며 이전에는 고문과 함께 차트를 잃었습니다.
 
Ilya Malev :
그렇군요. 저는 IsStopped 체크를 하지 않았기 때문에 복잡한 인디케이터의 생성을 방해하는 문제가 전적으로 제 잘못임을 고백합니다. 그러나 다른 한편으로 나는 프로그램의 작업과 그 문서가 일치해야 한다는 사실에 익숙합니다.

문서는 모든 뉘앙스를 고려할 수 없습니다. 특히 초, 기가헤르츠, 메가바이트, 값의 경우 측정 가능하지만 환경에 크게 의존합니다.

우리는 문서의 공백을 채우려고 노력합니다 (비록 우리는 의식의 추정을 희망하지만)

 
-Aleks- :
흠, 나는 네 가지에 대해 이야기했습니다. 지금은 모든 것을 올바르게 완료하고 닫는 것으로 보이며 이전에는 고문과 함께 차트를 잃었습니다.

4개에서는 각 차트를 닫는 프로세스가 병렬화되었습니다. 따라서 우리는 모든 사람의 타임아웃을 늘릴 수 있었습니다.

이전에는 차트를 순차적으로 기억하고 각각에 동일한 타임아웃을 부여했습니다. 차트와 브레이크 전문가가 많을수록 마감 프로세스가 더 오래 걸립니다.

 
Slawa :

4개에서는 각 차트를 닫는 프로세스가 병렬화되었습니다. 따라서 우리는 모든 사람의 타임아웃을 늘릴 수 있었습니다.

이전에는 차트를 순차적으로 기억하고 각각에 동일한 타임아웃을 부여했습니다. 차트와 브레이크 전문가가 많을수록 마감 프로세스가 더 오래 걸립니다.

거의 이해했습니다.

브레이크는 브레이크가 아니며, 하드웨어와 전문가가 수행하는 작업에 많이 의존하며 프로그램이 종종 비전문 프로그래머에 의해 작성된다는 사실을 감안해야 합니다. 이러한 목적을 위해 프로그래밍 언어가 존재합니다 여기, 그렇게 생각합니다.

 

MT4. 다시 한번 프로그램 의 전역 변수 초기화 기능에 주목하고 싶습니다.

전역 변수는 프로그램이 차트에 설치되거나 코드가 재컴파일될 때 한 번 초기화됩니다.

기간, 기호 또는 입력 매개변수를 변경하려는 경우 전역 변수는 다시 초기화되지 않지만(예: 0으로 재설정되지 않음) 이전 기간, 기호 또는 입력 매개변수로 작업할 때 획득한 값을 유지합니다. .

 input int c;
int a,b;
void OnInit () {
 a++; Print ( " a=" ,a, " b=" ,b, " c=" ,c); }

모든 전역 변수를 프로그래밍 방식으로 재설정하지 않은 경우 TF, 도구 또는 입력 매개변수를 변경할 때 코드가 이전 값, 즉 잘못 작동하게 됩니다.

합리적인가? 전략 테스터처럼 하는게 좋지 않을까요? 거기에서 전역 변수는 TF, 도구 또는 입력 매개변수가 변경될 때마다 다시 초기화됩니다.