class_destroy源码分析

简介: class_destroy源码分析

class_destroy源码分析


函数class_destroy()用于删除设备的逻辑类,即从Linux内核系统中删除设备的逻辑类。此函数执行的效果是删除函数__class_create()或宏class_create()在/sys/class/目录下创建的逻辑类对应的文件夹。

       class_destroy()源码如下:

/**
 * class_destroy - destroys a struct class structure
 * @cls: pointer to the struct class that is to be destroyed
 *
 * Note, the pointer to be destroyed must have been created with a call
 * to class_create().
 */
void class_destroy(struct class *cls)
{
  if ((cls == NULL) || (IS_ERR(cls)))
    return;
  class_unregister(cls);
}

cls:struct class结构体类型的变量,代表通过class_create创建的设备的逻辑类。

       通过分析源码可知,class_destroy调用了class_unregister()函数,它的具体实现如下:

void class_unregister(struct class *cls)
{
  pr_debug("device class '%s': unregistering\n", cls->name);
  class_remove_groups(cls, cls->class_groups);
  kset_unregister(&cls->p->subsys);
}
相关文章
|
5月前
|
安全 Java 编译器
springboot @resource与private final声明式的有何区别??
【6月更文挑战第3天】在Spring Boot中,@Resource 和 private final 常用于依赖注入,但它们的用途和行为有一些重要的区别。
185 1
|
6月前
|
Java 数据库连接 Spring
@Bean(name = "", initMethod = "init", destroyMethod = "close")的概念与使用
【4月更文挑战第26天】在 Spring Framework 中,@Bean 注解是用来声明一个 bean,它可以在配置类中的方法上使用,从而允许显式地定义 bean 的配置。通过 @Bean 注解,可以非常灵活地配置 Spring 容器中的 bean 行为,包括其名称、初始化方法和销毁方法
956 2
|
6月前
|
Java
获取 Class 对象
获取 Class 对象
33 1
|
消息中间件 Android开发
Handler源码解读——handler使用时的注意事项
工作中经常会遇到从子线程发送消息给主线程,让主线程更新UI的操作,常见的有handler.sendMessage(Message),和handler.post(runnable)和handler.postDelayed(runnable, milliseconds);一直在使用这些方法,却不知道他们的原理,今天就来解释一下他们的原理。
class_create函数源码分析
class_create函数源码分析
|
安全 Java API
java基础 之 从Class.forName()跟.class的区别看类的初始化
java基础 之 从Class.forName()跟.class的区别看类的初始化
112 0
|
Java Spring
FileSystemResource和ClassPathResource有何区别?
FileSystemResource和ClassPathResource有何区别?
FileSystemResource和ClassPathResource有何区别?
|
JavaScript 程序员
Class-总结class的基本用法和两个注意点
一、注意点一:class关键字区间使用 二、注意点二:Class关键字内部函数
Kyro - To register this class use: kryo.register
Kyro - To register this class use: kryo.register
328 0
|
Java
【EventBus】Subscribe 注解分析 ( Subscribe 注解属性 | threadMode 线程模型 | POSTING | MAIN | MAIN_ORDERED | ASYNC)
【EventBus】Subscribe 注解分析 ( Subscribe 注解属性 | threadMode 线程模型 | POSTING | MAIN | MAIN_ORDERED | ASYNC)
723 0