Java垃圾收集器是否会停止从JNI调用创建的POSIX线程?
发布时间:2020-05-28 23:26:00 所属栏目:Java 来源:互联网
导读:我有一个时间关键的应用程序,需要按照设定的时间表发送UDP数据报.接收端的抖动容限非常低.使用 java ScheduledThreadPoolExecutor实现它是不够的,因为当GC执行“Stop the World”集合时,我的线程会在GC完成它的工作时暂停. 我想用Java实现业务逻辑,同时用C语
|
我有一个时间关键的应用程序,需要按照设定的时间表发送UDP数据报.接收端的抖动容限非常低.使用 java ScheduledThreadPoolExecutor实现它是不够的,因为当GC执行“Stop the World”集合时,我的线程会在GC完成它的工作时暂停. 我想用Java实现业务逻辑,同时用C语言中的POSIX线程实现时间关键部分(顺便说一句,本机环境是Linux).这将允许我们保存数千行用Java编写的代码,并从本机系统调用中获得所需的调步. 我的问题是:如果我调用一个创建一个单独的POSIX线程的JNI函数,当Java GC执行“停止世界”集合时,该线程将被“暂停”吗?经验丰富的JNI大师是否有任何陷阱想用这种方法指出或者建议采用任何其他方法? 一如既往,感谢令人敬畏的堆栈溢出社区! 解决方法它不应该阻止posix线程(假设gc不使用那么多的cpu,其他系统调用将被阻止).我认为它会阻止从java应用程序访问posix线程,但只能在非常有限的时间内访问.(编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- testing – Generic JUnit测试类
- java – JVM(64位1.5.0._22)在GCTaskThread崩溃
- Java 8:流和Eratosthenes的Sieve
- java – 如何包含pom项目中的所有模块
- java – 并发队列 – 一般问题(描述和用法)
- java – ZonedDateTime作为Spring REST RequestMapping中的
- java – 没有在扩展JPanel的类内调用ActionListener
- 为什么Java对象必须是8的倍数?
- Android-butterknife 简单使用
- 详解配置spring-boot-actuator时候遇到的一些小问题
推荐文章
站长推荐
热点阅读
