gpt4 book ai didi

java - Java线程与原生Linux线程的匹配

转载 作者:太空狗 更新时间:2023-10-29 12:33:10 24 4
gpt4 key购买 nike

我有一个关于 Java 线程new Thread() 创建并由 Thread.currentThread() 获取的线程匹配的小问题> 和 native Linux 线程可以通过 pthread_create() 函数调用创建。

问题是:考虑到我想用 pthread_t 参数调用一些本地 Linux 函数,以便在该线程上进行一些操作,那么是否可以在 Java 中创建线程(就像一个普通 Java 线程)获取其 id(通过调用 Thread.getId())并通过 JNA 调用将那个 id 传递给 native 函数?期望完全正确的函数行为是否合理?

或者还有其他(正确的)方式?

非常感谢您的宝贵时间和耐心!!!!

最佳答案

您可以使用 JNA 调用您编写的 native 函数,然后查询当前线程。 (例如pthread_self)。

我不知道其他方法是否可行或可行,快速谷歌没有显示任何内容,但我不是 JNA 专家。

如果您需要一个特定的线程,您总是可以编写一个返回 linux 线程句柄的 JNA 函数。当您的线程启动时,调用该函数并记录结果以备将来使用。不过,我不知道是否可以保证 Java 线程始终对应于给定的系统线程。

关于java - Java线程与原生Linux线程的匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20675605/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com