apangin/nalim:基於 JVMCI 的快速 Java 原生介面
Nalim 是一個使用JVMCI(JVM 編譯器介面)將 Java 方法連結到本機函式的庫 。
與其他用於本地庫訪問的 Java 框架不同,nalim 不使用 JNI,因此不會產生與 JNI 相關的開銷。
使用 nalim 呼叫本機函式時:
- 執行緒不會從in_Java狀態切換到in_native狀態再返回。
- 不涉及記憶體障礙。
- 沒有建立JNI控制程式碼。
- 省略了異常檢查和安全點檢查。
- 本地函式可以直接訪問堆中的原始陣列。
因此,與 JNI 相比,本機呼叫變得更快,尤其是在目標函式很短的情況下。從這個意義上說,nalim 類似於 JNI Critical Natives,但依賴於標準支援的介面。JNI Critical Natives在 JDK 16 中已被棄用,自 JDK 18 起已被[url=https://bugs.openjdk.org/browse/JDK-8258192]淘汰[/url],因此 nalim 可以作為替代品。
相關文章
- Java學習關於集合框架的基礎介面--Collection介面Java框架
- Java基於API介面爬取商品資料JavaAPI
- Java基於API介面爬取淘寶商品資料JavaAPI
- java基礎-介面Java
- 基於PHP的cURL快速入門PHP
- 基於微信小程式的知乎介面微信小程式
- 如何快速打好Java基礎?Java
- QuickMock:基於Express的快速mock平臺UIMockExpress
- java基礎:CompletionStage介面Java
- 【Java基礎】類和介面Java
- 基於java的外賣點餐系統部分模組設計(無介面版)Java
- 基於雲原生的秒殺系統設計思路
- 快速搭建基於註解的 Dubbo 專案
- 模型的威力:基於模型,快速梳理原始碼模型原始碼
- Java基礎 快速學習(二)Java
- Java基礎 快速學習(三)Java
- Java基礎 快速學習(四)Java
- 基於代理服務的介面合併方案
- 基於Spring的Restful介面生成工具SpringREST
- Java基礎05 實施介面Java
- Java基礎之淺談介面Java
- Java基礎-抽象類和介面Java抽象
- 【Java基礎】--Java容器剖析:Set、List、Map介面Java
- 基於VSCode快速上手FlutterVSCodeFlutter
- 基於ECS快速搭建Docker環境Docker
- 基於 Kubernetes 的雲原生 AI 平臺建設AI
- 基於APIView&ModelSerializer寫介面APIView
- 基於快速失敗的軟體開發 - levelup
- 在Ubuntu上快速搭建基於Beego的RESTful APIUbuntuGoRESTAPI
- 基於順豐同城介面編寫sdk,java三方sdk編寫思路Java
- C++ -> Java快速學習-基礎C++Java
- 基於 Django 的 Dubbo 介面測試工具平臺Django
- 如何基於 eoLinker 的進行API介面管理API
- Java基礎04 封裝與介面Java封裝
- [Java 基礎]--呼叫webservice介面的方法JavaWeb
- 基於 OpenCV 的影象匹配( Java 版)OpenCVJava
- 基於java的分散式爬蟲Java分散式爬蟲
- 基於雲原生技術的融合通訊是如何實現的?