Facebook은 abstract interpretation으로 Android를 병렬화했다. 작동 방식은 다음과 같다.
Facebook이 어떻게 abstract interpretation과 의도적인 unsoundness를 사용하여 수백만 줄의 Android 코드에서 race condition을 대규모로 발견했는가.
Facebook의 Android 앱에는 성능 문제가 있었다. UI 스레드가 작업에 압도당했지만, 코드를 백그라운드 스레드로 이동하면 race condition이 발생했다. 프로덕션의 크래시. 화난 사용자. 그들은 더 나은 코드 리뷰나 더 많은 테스트로 이를 해결하지 않았다. 그들은…