Описание тега safe-publication
1
ответ
Когда форма обрабатывается в JSF, все ли это происходит в одном потоке?
Скажи, у меня есть этот кусок кода <p:dataTable styleClass="scheduleTable" value="#{todaySchedule.hours}" var="hour"> <p:column headerText="Hour" styleClass="hourColumn" > #{hour.time} </p:column> </p:dataTable> и в классе по…
30 дек '17 в 02:46
0
ответов
Произошла ошибка при открытии Epub из файла EPUB заголовка PHP с помощью библиотеки Epub JS
Я пытаюсь открыть файл Epub с моего собственного сервера. PHP: <?php $filename = '../files/2.epub'; header('Content-type: application/epub+zip'); header("Content-Disposition:inline;filename='somefilename.epub'"); //header('Content-Transfer-Encodi…
27 июл '16 в 10:25
1
ответ
Статические блоки выполняются в последовательном порядке? И что если это не блок?
Гарантированно ли работают эти строки со статическими инициализаторами по порядку? Потому что если нет, то все может пойти не так public Class x { private static final BasicDataSource ds = new BasicDataSource(); private static final JdbcTemplate jdb…
31 дек '17 в 07:02
3
ответа
Обеспечение безопасной публикации и безопасности потоков в Java с помощью статических фабрик
Класс ниже должен быть неизменным (но см. Правку): public final class Position extends Data { double latitude; double longitude; String provider; private Position() {} private static enum LocationFields implements Fields<Location, Position, List&…
05 дек '13 в 16:01
2
ответа
Предоставление времени восстановления для небезопасно опубликованного java.lang.String
java.lang.String только эффективно неизменяем. Брайан Гетц (Brian Goetz) из "Java Concurrency in Practice" сказал, что что-то вроде эффективно неизменяемых объектов будет поточно-ориентированным, только если будет безопасно опубликовано. Теперь, ска…
22 авг '14 в 02:23
3
ответа
Двойная проверка блокировки без использования volatile-ключевого слова и без синхронизации всего метода getInstance()
Ниже приведен мой одноэлементный класс, в котором я использую двойную проверку-блокировку без использования ключевого слова volatile и без синхронизации всего метода getInstance(): public class MySingleton { private static MySingleton mySingleton; p…
24 май '18 в 13:46
0
ответов
Является ли параллелизм на практике нарушением листинга 5.15?
В JCIP, листинг 5.15, Гетц демонстрирует класс, использующий CyclicBarrier, но что меня заинтриговало, так это то, что внутри конструктора класса, использующего этот барьер, он позволяет ссылочной ссылке ускользать, создавая новый CyclicBarrier. Для…
27 дек '17 в 04:13
1
ответ
Происходит ли переходное состояние перед вызовом Thread.start()?
Допустим, у нас есть класс class Foo { int x; Foo() { x = 5; } } и немного кода клиента public static void main(String[] args) { Foo foo = new Foo(); new Thread(() -> { while (true) { new Thread(() -> { if (foo.x != 5) { throw new AssertionErr…
15 янв '18 в 01:38
1
ответ
Конечные поля, инициализированные вне конструкторов, инициализируются перед запуском конструктора?
Скажем, у вас есть этот фрагмент кода private final Set set = new HashSet() {{ add(1); }}; SomeConstructor() { printSet(); } long printSet() { new Thread(() -> {System.out.println(set)}).start(); } например, если компилятор решил сделать это выгл…
07 фев '18 в 07:53
1
ответ
Существует ли "небезопасная публикация" в Javascript?
Я только что написал следующий код Javascript... class Team { constructor(id, eventHandler) { this.id = id; this._eventHandler = eventHandler; this._eventHandler.trigger("NewTeam", this); // my concerning line } } У меня есть опыт Java. В Java счита…
26 авг '16 в 00:02
1
ответ
Параллелизм Java на практике Листинг 6.2
Следующий фрагмент кода приведен в листинге 6.2 "Практический параллелизм Java" ( http://jcip.net/listings/ThreadPerTaskWebServer.java). package net.jcip.examples; import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; /**…
28 май '18 в 01:13
2
ответа
Безопасная инициализация нулевой ссылки
Мне интересно, какие гарантии публикации существуют для не конечного поля, инициализированного нулевым, если оно есть. Рассмотрим следующий фрагмент: public class MyClass { private final CopyOnWriteArrayList<Inner> list = new CopyOnWriteArrayL…
25 сен '18 в 10:53
0
ответов
Конструктор публикует себя, а затем выдает исключение
В следующем фрагменте кода, будет published объект быть мусором? Есть ли шанс, что published останется как наполовину построенный объект? final class Publisher { public static volatile Publisher published; public Publisher() { published = this; thro…
26 июн '14 в 17:09
2
ответа
Безопасен ли вызов start() для объекта этого класса? Пример из Java Concurrency на практике
Прежде всего, я дам ссылки на исходный код, о котором я буду говорить, так как копирование / вставка сделает эту страницу вопроса слишком длинной. В листинге 5.15 http://jcip.net/listings/CellularAutomata.java из JCIP я представляю, что в каком-то о…
27 дек '17 в 07:53
6
ответов
Многопоточность Java и безопасная публикация
После прочтения " Java одновременно на практике" и " OSGI на практике" я нашел конкретную тему очень интересной; Безопасная публикация. Следующее от JCIP: Чтобы безопасно опубликовать объект, и ссылка на объект, и состояние объекта должны быть видны…
29 апр '09 в 11:49
3
ответа
Безопасная публикация местных окончательных ссылок
Я знаю, что вы можете безопасно опубликовать не потокобезопасный объект, написав ссылку на final или же volatile поле, которое позже будет прочитано ровно одним другим потоком, при условии, что после публикации поток, создавший объект, отбрасывает с…
07 июл '16 в 17:43
0
ответов
Можем ли мы быть уверены в том, что Spring и JSF или какая-либо инъекция bean-компонентов фреймворка видима и безопасна с точки зрения публикации?
Допустим, 10 запросов поступило на сервер Tomcat. И сказать теоретически, что сервер Tomcat обрабатывает такие запросы private static final Executor exec = Executors.newFixedThreadPool(10); ServerSocket socket = new ServerSocket(80); while (true) { …
29 дек '17 в 23:09
1
ответ
Java final & Safe Publication
Когда я прочитал jsr-133-faq на вопрос "Как работают последние поля в новом JMM?", Он сказал: class FinalFieldExample { final int x; int y; static FinalFieldExample f; public FinalFieldExample() { x = 3; y = 4; } static void writer() { f = new Final…
24 апр '18 в 16:33
0
ответов
Почему SafePoint threadSafe?(Параллелизм на практике)
Я читаю параллелизм на практике.Есть следующий пример (4.3.5): @ThreadSafe public class SafePoint { @GuardedBy("this") private int x, y; private SafePoint(int[] a) { this(a[0], a[1]); } public SafePoint(SafePoint p) { this(p.get()); } public SafePoi…
10 фев '17 в 22:02
1
ответ
Влияет ли неправильно созданный объект только на видимость потока, который он публикует внутри конструктора tbe?
Когда http://www.cs.umd.edu/~pugh/java/memoryModel/jsr-133-faq.html говорит Значения для конечных полей объекта задаются в его конструкторе. Предполагая, что объект построен "правильно", после создания объекта значения, присвоенные последним полям в…
03 янв '18 в 03:23