作者: ling

12 篇文章

记录一次艰难的C++依赖项配置过程
几天前,我想要制作一款C++实现的后端云对接库,预计将要实现Java版类库的完整功能。我准备使用libcurl来完成https请求和证书固定的任务。 在项目配置过程中,我希望项目能在Linux下直接运行,以方便开发过程中的调试工作。又希望正式打包时,能一次性将Android的四个ABI都构建出来,并且包含Android平台的可执行文件。于是,我使用…
多线程共享数据同步-内存屏障
Lua VM ling.choice()API中,使用进程间通信手段发送UI请求到JNI,后阻塞API,等待JNI返回之后,将数据返回给Lua VM。在等待JNI返回时,使用轮询Flag变量的方法控制返回时机,遭遇内存屏障问题。 内存屏障是指在多核CPU中,不同线程运行在不同核心之上,线程对共享变量的修改存在与当前核心的寄存器上,并没有立即写入内存…