Я внедрил AsyncTask, где регулярное выражение, предоставленное пользователем, используется для сопоставления огромных данных html-кода. Однако, поскольку в некоторых регулярных выражениях содержится много кванторов/обратного отслеживания, Matcher.find() становится бесконечным.Android - Matcher.find() infin
Я пытался использовать InterruptibleCharSequence представлены здесь: How to terminate Matcher.find(), when its running too long?, но мне кажется, что Шара никогда не дозвонился, поэтому никогда не прерывался. Мое последнее предположение - создать новый процесс, чтобы запустить эту процедуру регулярного сопоставления, а затем убить ее, когда поиск отменен. Однако у меня есть проблема с совместным использованием объектов между сервисом и активностью из-за разных процессов.