簡體   English   中英

如何在android本機代碼中使用共享內存?

[英]How to use shared memory in android native code?

我正在將現有的 linux 應用程序移植到 android。 該應用程序正在使用共享內存 API,如shm_open()等。

檢查android source 中的仿生,我發現這些 API 不受支持。 因此我在構建過程中遇到鏈接錯誤。

external/l2/avbtp.c:138: error: undefined reference to 'shm_open'
external/l2/avbtp.c:151: error: undefined reference to 'shm_unlink'
external/l2/avbtp.c:186: error: undefined reference to 'shm_unlink'

如何正確解決這個問題?

Android 故意不提供 SysV IPC 盡量避免使用共享內存,或者,如果你真的想要,尋找使用ashmem例子。

好吧,我找到了這個github項目,並且很好用! https://github.com/pelya/android-shmem

就像魔術一樣,它運作完美。 您可以無縫地使用shmget(),shmat()和shmdt()API在獨立進程中使用android中的共享內存。 試試看。

是的,我看過那個項目,但是我很困惑如何使用它。 我只想在我的安卓手機上正確部署postgresql,但是我不能和ashmmem一起工作,所以我需要使用這個模擬器,問題是我只是一個初學者而這些解釋還不夠清楚。 😢

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM