IntelliJ вопросы структурного поиска регулярных выражений

Конструктор действует очень похоже на метод, возвращающий построенный тип. И async метод не может возвращать только какой-либо тип, он должен быть либо «огонь и забыть» void, либо Task.

Если конструктор типа T фактически возвратил Task<T>, это было бы очень запутанным, я думаю.

Если конструктор async вел себя так же, как метод async void, этот тип разбивает, какой должен быть конструктор. После возврата конструктора вы должны получить полностью инициализированный объект. Не объект, который будет фактически правильно инициализирован в какой-то неопределенной точке в будущем. То есть, если вам повезло, и инициализация async не терпит неудачу.

Все это всего лишь предположение. Но мне кажется, что наличие возможности асинхронного конструктора приносит больше проблем, чем это стоит.

Если вы действительно хотите использовать семантику «огонь и забыть» методов async void (чего следует избегать, если возможно), вы можете легко инкапсулировать весь код в метод async void и вызвать это из своего конструктора, как вы упомянули в вопросе.

1
задан Bas Leijdekkers 21 March 2016 в 08:21
поделиться

1 ответ

Предполагая, что имена ваших переменных могут содержать только буквы ASCII и цифры плюс символ подчеркивания, я бы выбрал

\b[a-z]\w*\b(?<!_)

EDIT: ...и, как указал @Stefan, вам нужно выбрать опцию "чувствительный к регистру".

2
ответ дан 2 September 2019 в 22:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: