# hhl-threadpool-c **Repository Path**: DreamPro/hhl-threadpool-c ## Basic Information - **Project Name**: hhl-threadpool-c - **Description**: 与hhl-threadpool-java对应,实现jni的c代码。 - **Primary Language**: C - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 4 - **Forks**: 0 - **Created**: 2020-12-22 - **Last Updated**: 2021-04-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hhl-threadpool-c #### 介绍 与hhl-threadpool-java对应,实现jni的c代码。 ### 线程实现原理 * 获取MyThread字节码 * 注册为全局引用,否则其他线程访问不到 * 创建OS线程,将当前线程attach到jvm中,获取当前线程要运行java中方法的函数 jmethodID runMethod = env->GetMethodID(jEnv, g_threadClass, "run", "()V"); * 实例化线程类 * 执行线程运行函数 * 删除注册的全局引用,否则会出现内存泄露 * 接触attach,否则会出现线程无法退出或不正常退出、jvm会挂等奇葩情况 ### 线程池实现原理 ### 线程池调度任务实现原理