val c = collection.par.map{ f(_) }
이 사용하려는
의 계산을 죽일되다.
그러나 기능 f를 제어하지 못했습니다.
일부 입력 인수의 경우 f는 버그가있어서 무한 루프가됩니다.
외부 악의적 인 사람은 함수 f에서 버그를 연습하는 이런 종류의 데이터 인수를 발견했습니다. 그래서 그들은 서비스 거부 공격 (denial-of-service attack)으로 시스템에 수많은 톤을 제출합니다.
그래서 함수 f의 작성자와 완벽한 협력 관계가 있더라도 복잡한 일을하는 함수이며 버그가있을 수 있습니다.
다른 스레드/배우/갯수가 측면에서 실행되는 경우 병렬 수집을 만들 때 무한 루프의 계산을 어떻게 중지시킬 수 있습니까?
그리고 관련 ... 내가 심지어 infinte 루프가 있다는 것을 알지 못한다면, 내 코드는 더 이상 c를 필요로하지 않는 분기를 취하고, 내 병렬 수집에 대한 모든 참조를 삭제합니다. c 위. 계산이 영원히 계속 될 것입니까, 아니면 객체가 GC에 의해 회수 될 때 멈출까요?
pls가 깨진 창을 수정합니다! 그 주위에 돈 벌지 마! –
나는이 세부 사항을 추가해야한다 : 함수 f는 순수 함수, 돌연변이, 쓰레드/액터/재밌는 비즈니스의 사용이 아니다. 하지만, 다른 회사에서 일하는 누군가 나에게 편지를 씁니다. –
나는 충분히 명확하지 않았다. 나는 명확하게 (희망을 갖고) 이슈를 편집했다. –