У меня есть собственный поток, который нужно вызвать на Java. Для этого мне нужно присоединить поток к виртуальной машине, используя AttachCurrentThread
. Поскольку этот обратный вызов будет происходить довольно часто, поток, вероятно, должен оставаться подключенным. Многократный вызов AttachCurrentThread
- это нормально («Попытка присоединить уже присоединенную нить - это бесполезно»)
Должен ли я вызывать DetachCurrentThread
до завершения потока, произойдет ли это автоматически или даже не требуется? Что произойдет, если я должен позвонить отделить, но не делать? Будет ли это просто "утечка", или это может даже повредить состояние виртуальной машины?
Я проверил спецификацию нативного интерфейса Java, но либо пропустил это, либо он действительно не указан.
Мой вопрос относится именно к Sun JDK 6 в Windows XP.