Не совсем так, сам объект 'WeakReference' разыменовывать вполне безопасно, т. к. на него существует сильная ссылка внутри 's_Instances'. 'WeakReference' - это своего рода обертка над объектом для которого вы хотите создать слабую ссылку. Сам же объект - это 'WeakReference.Target' и его то GC и может почистить в любой момент.
Привет, зависит от того, какой автомат используется в алгоритме. Проблема катастрофического возврата актуальна только для недетерминированных конечных автоматов.
Привет! В этой статье я сделал акцент на самой проблеме и принципах её обнаружения и исправления. Таким образом, я хотел поделиться опытом с теми разработчиками, кто как и я столкнулся с проблемой катастрофического возврата и хочет понять почему это произошло и как этого можно было-бы избежать. При этом я старался максимально абстрагироваться от подробностей о принципе работы какого-либо конкретного алгоритма.
Однако, мне действительно стоило упомянуть, что эта проблема актуальна только для алгоритмов, основанных на недетерминированном конечном автомате.
Подобное предупреждение уже исправлено в PVS-Studio (beta). В следующем релизе данное исправление также будет присутствовать. Если у вас есть ещё вопросы, то вы можете обратиться с ними в нашу поддержку.
Не совсем так, сам объект 'WeakReference' разыменовывать вполне безопасно, т. к. на него существует сильная ссылка внутри 's_Instances'. 'WeakReference' - это своего рода обертка над объектом для которого вы хотите создать слабую ссылку. Сам же объект - это 'WeakReference.Target' и его то GC и может почистить в любой момент.
Чтобы такое пятно превратилось в точку, пришлось бы отмасштабировать диаграмму так, что на ней стало бы сложно что-то разобрать :).
Именно такое впечатление складывается если посмотреть на количество установок стандартных Java расширений для VS Code:
https://marketplace.visualstudio.com/items?itemName=redhat.java (31,906,441 скачиваний);
https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-dependency (25,431,727 скачиваний).
Не-а
Привет, зависит от того, какой автомат используется в алгоритме. Проблема катастрофического возврата актуальна только для недетерминированных конечных автоматов.
Привет! В этой статье я сделал акцент на самой проблеме и принципах её обнаружения и исправления. Таким образом, я хотел поделиться опытом с теми разработчиками, кто как и я столкнулся с проблемой катастрофического возврата и хочет понять почему это произошло и как этого можно было-бы избежать. При этом я старался максимально абстрагироваться от подробностей о принципе работы какого-либо конкретного алгоритма.
Однако, мне действительно стоило упомянуть, что эта проблема актуальна только для алгоритмов, основанных на недетерминированном конечном автомате.
Подобное предупреждение уже исправлено в PVS-Studio (beta). В следующем релизе данное исправление также будет присутствовать. Если у вас есть ещё вопросы, то вы можете обратиться с ними в нашу поддержку.
PVS-Studio (beta) можно скачать здесь.