选择特殊符号

选择搜索类型

热门搜索

首页 > 百科 > 建设工程百科

十字转门

十字转门,又叫turnstile。Turnstile是一种数据抽象,用来封装休眠队列和与互斥锁和读/写锁相关的优先级继承信息。Turnstiles在Solaris7大幅改变,但基本前提仍然是相同的。首先,我们要看着2.5.1/2.6机制,然后看看在Solaris7发生什么改变。

十字转门基本信息

十字转门介绍

Turnstile是一种数据抽象,封装休眠队列和优先级继承互斥锁和读/写锁相关的信息。Turnstiles在Solaris7大幅改变,但基本前提仍然是相同的。首先,我们要看着2.5.1/2.6机制,然后看看在Solaris7发生什么改变。

图1.tstile_mod的结构

tstile_mod的结构是这样展开的。它保持turnstiles的链接,以及实施所需的各个领域,如pool,活跃的数字行在tsm_chunk阵列的活跃入turnstiles,链接到pool中的turnstiles,一个数组的指针到pool中的turnstiles块(tsm_chunk[] -这些都是活跃的pool中的turnstiles)。turnstiles本身维护名单上的其他pool中的turnstiles,前向链路的结构与优先级继承信息(pirec),数组有两个休眠队列,读/写锁,读操作和写操作都保存在单独的休眠队列,而只有其中之一是用于互斥锁。正如上个月我们所看到的,休眠队列点上的队列(sq_first)内核线程。其他环节结合在一起,包括内核线程链接turnstiles(KTHREAD阻塞时,对一个同步对象设置),如果一个点从KTHREAD结构pirec的内核线程的优先级改变,由于优先级反转。由于继承是接收者(高优先级),benef领域pirec点回的内核线程更好的优先级。

在开机时,当一个线程需要一个互斥或读/写锁阻止从pool中分配一个turnstile,内核创建一个pool中的turnstiles块。该pool是在图1关闭tsp_list挂入turnstiles列表。turnstiles返回到可用pool时,线程被唤醒。代码试图保持pool中的turnstiles来匹配在系统上寻找在pool中的turnstiles每一次的内部thread_create()函数被调用来创建一个新的内核线程的内核线程数。如果内核线程数大于turnstiles在pool中创建的内核线程的数量,代码将动态分配的pool中的turnstiles。

当一个执行内核线程都需要一个锁,它可以调用mutex_enter()或mutex_tryenter(),它试图获取互斥锁的地址通过两种功能。更频繁地调用mutex_enter(); mutex_tryenter()将立即返回,如果锁不能被获取,如果锁被保有,而mutex_enter()将导致典型的旋转或阻止行为。mutex_tryenter()例程存在的情况下,如果不能立即提供所需的互斥,调用代码不起旋转或阻塞。这样一个使用的mutex_tryenter()"功能运行"的旗帜,其中一个内核函数功能启动时,抓起一个互斥。另一个内核线程使得相同的函数调用,它使一个mutex_tryenter()进入呼叫,如果mutex_tryenter返回一个错误(持有锁),我们知道另一个线程运行函数。让我们来看看一个mutex_enter()调用的流动,看到在turnstiles和优先级继承被终结了。

mutex_enter()函数检查锁定类型(自适应或自旋)锁创建并初始化时建立的。如果锁自锁旋转,它正被保有,代码进入一个的自旋循环,通过循环试图获取锁与每个通路。如果锁是自适应的,目前被保有,代码将检查持有锁的线程的状态。如果持有人运行,旋进入循环,如果没有,使的mutex_enter()调用的内核线程最初请求锁设置为阻止(休眠)。注意,输入的自适应锁的代码段是在处理器的系统信息结构mutex_adaptive_lock_enter场递增。自适应锁进入的数量反映在mpstat的的SMTX列(1M)。

当一个锁被锁住,而锁住者没有运行的时候,这时为了能够进行休眠应该使用一个turnstile来设置应答线程。Turnstile是从turnstile池中分配的,并且相关结构域会被初始化。turnstile的结构和可适应互斥结构都包含被内核用作整体实现的一部分的域。一个可适应互斥结构包含一个储存着turnstile所等待线程的ID的域。如果等待域是空(这意味着,没有线程在等待),一个turnstile是从池中分配的,那互斥等待域设置为刚刚分配的turnstile的ID,并且turnstile的ts_sobj_priv_data(turnstile同步对象私有数据)域设置为指向可适应互斥结构的地址。否则,如果一个线程已经在为互斥等待,那已经为互斥而分配的turnstile的地址被检索。

在这两种情况下,我们现在有一个同步对象(可适应互斥)的turnstile,并且我们能通过关联turnstile继续改变线程状态以休眠和设置休眠序列。内核的t_block()函数就是以这个目的被调用的,同时CL_SLEEP宏也为此调用。从之前的列中应该记住,调度特定类的函数是通过宏调用的,这些宏用于实现正确的基于调度内核线程类的功能。在TS和IA类线程情况下,ts_sleep()函数被调用,并且线程的优先级设置为SYS优先级。这是一个优先级的提升--当他被唤醒是,他会得到优先于TS和IA而运行的优先级--同时线程的状态被设置为TS_SLEEP。内核线程的t_wchan域(等待渠道)设置为同步对象操作向量的地址--一个有可适应互斥对象特定功能的数组。回想从上个月一个到相似函数设定的连接为休眠序列完成了。在这种turnstile的情况下,不同的同步对象的turnstile被用以定义一个操作的向量,这向量是一种简单的包含对象种类,拥有者的地址,和未休眠的优先级修改独特对象函数的数据结构。一个同步对象的操作结构为了所有同步对象而被声明,这存在于Solaris内核中。

以下为结构的定义:

/usr/include/sys/sobject.h:

/*

* The following datastructure is used to map

* synchronization object typenumbers to the

* synchronization object'ssleep queue number

* or the synch. object'sowner function.

*/

typedef struct _sobj_ops {

char *sobj_class;

syncobj_t sobj_type;

qobj_t sobj_qnum;

kthread_t * (*sobj_owner)();

void (*sobj_unsleep)(kthread_t *);

void (*sobj_change_pri)(kthread_t *, pri_t, pri_t *);

} sobj_ops_t;

最终,线程的t_ts域设置为turnstile的地址,而线程被插入到turnstile的休眠序列中。上个月我们讨论的休眠序列函数被间接地通过在turnstile头文件(线程在休眠序列中的插入通过称作内核的sleep_insert()函数的TSTILE_INSERT宏完成)中定义的宏而调用。当全部完成后,内核线程驻留在休眠序列中和turnstile连接(如图1所示),同时内核线程的t_ts鱼被设置,以参考turnstile的地址。一个内核线程只能被一个同步对象在任意时间点堵塞,决不能超过一个。所以,t_ts将会同时变为空指针或者一个指向单个turnstile的指针。

我们还没有全部完成--现在是时候进行优先级继承检查来决定是否锁住锁的线程在一个比线程回应锁(被放置在turnstile休眠序列中)更低(更差)的优先级中。内核的pi_willto()函数被调用,互斥拥有者的优先级和线程等待相检查。如果拥有者的优先级比等待线程优先级更高,那么我们不存在优先级调换的情况,而且代码被释放。如果等待者优先级比拥有者高,我们需要优先级调换,互斥拥有者的优先级被提高以超过等待者。内核线程的t_epri域被用来继承优先级,同时当轮到按序安排线程派遣序列(在唤醒后)时,一个在t_epri中的非空值会导致被占用线程优先级的继承。

此时,turnstile已被设置,同时等待线程也已存在于turnstile的休眠队列中、优先级反转的问题的潜力也已被检查,以及如果需要的话,优先级继承已被执行。内核现在进入调度动开关switch()函数,从调度队列中找到最好的可运行的线程并运行它,进而使得执行内核线程放弃处理器。

读/写锁本质上与此是相同的。当内核线程试图获得一个读/写锁,而这个锁目前正在由另一个线程持有,此时turnstile功能被调用来分配turnstile(或者如果这个锁已经被一个turnstile所拥有,则设置turnstile指针,这意味着至少有另外一个线程在等待)。然后内核线程被放在与turnstile关联的休眠队列中。正如我们前面提到的,一个关联读/写锁的turnstile会拥有两个独立的休眠队列链表,一个用来读一个用来写。

唤醒机制其实很简单。在内核中使用锁的约定中要求调用同步对象输入例程(例如mutex_enter()或rw_enter()),其次需要在适当的时间调用结束例程(例如mutex_exit()或rw_exit()),从而释放被持有的锁。对于自适应的互斥锁或读/写锁,释放功能需要检查同步对象中的等待域。如果有正在等待的内核线程,turnstile宏TSTILE_WAKEONE()会被引用,同时sleepq_wakeone()函数会被调用。Turnstile的休眠队列中最高优先级的线程将被调度类的特定唤醒程序唤醒,并根据其优先级放在适当的调度队列(记住,在这种情况下,如果该线程在被放入休眠队列时赋予了SYS优先级,则它会在任何TS和IA类线程之前被唤醒)。一旦执行,它会让抢占另一个被堵塞的同步对象。Turnstile现在可以返回到可用的turnstile池中了。

那么在Solaris7中有什么不同呢?

正如我们前面提到的,Solaris7中的turnstiles被重新改写:很多代码被删除,同时开发了一些新的、更高效的功能。Turnstiles被保留在一个全系统的哈希表turnstile_table[]中,这是一个turnstile_chain结构的数组。数组中的每一项都是turnstile_chain结构,同时也是一个turnstiles锁链表的开头。该数组利用同步对象(互斥锁或读/写锁)地址的散列函数来索引。Turnstile_table数组在引导时被初始化,如下面图2中所示。

图2.turnstile table的结构

链中的每个条目都具有其自己的锁,以允许链执行并发遍历。Turnstile本身具有不同的结构;对于每一个链,都有一个活动列表(ts_next)和一个空闲的列表(ts_free),还有一个计算在同步对象(waiters)中等待的线程数、一个同步对象的(ts_sobj)指针、一个连接到内核线程的线程指针,这个内核线程的优先级是通过优先级继承得来的,以及多个休眠队列。在2.6的实现中,每个turnstile有两个休眠队列。注意,优先级继承的数据被集成到了turnstile中,所以不会再有pirec结构。

新开发的turnstile功能支持新的模型,并且集成了优先级继承功能。在之前的版本中,优先级继承代码是内核例程中的一组独立的函数(例如我们之前提到的pi_willto()函数)。一般事件的序列在所有的版本是一样的。

让我们继续看上一节中的例子,内核进程通过执行mutex_enter()或者rwlock_enter()调用来请求锁,而当前这个锁正被另一个线程控制。---看看在Solaris7系统下会发生什么。如上所述,在自适应互斥与控制者没有运行的情况下,调用方将会阻止(对于读/写锁,如果锁被线程拥有,调用方总是会阻止)。Solaris7结果中,在一个同步对象turnstile_table[]调用时,我们索引的数组通过散列的同步对象的地址,如果已经存在一个turnstile(即已经有等待者),我们会得到正确的turnstile。否则,查找功能将简单的返回一个没有等待者的turnstile的地址。

现在已经完成了第一步。这意味着代码有了turnstile。接下来,内核线程需要被设置为休眠状态,并放在与turnstile休眠队列,若存在优先级反转条件,则需要测试和解决之。Solaris7的turnstile_block()函数处理安置到休眠队列中的请求锁的线程,任何线程优先级反转测试可能已经等待相同的锁,就像2.6例子中那样,放弃处理器进入调度的swtch()函数。

在turnstile_block(),指针设置根据从turnstile_lookup()中的返回。如果turnstile指针为null,我们连接起来在哪个内核线程的t_ts的的指针指向turnstile。(当初始化内核线程是在Solaris7,创建一个turnstile和链接到其t_ts指针)。如果从查询返回的指针不为空,那么至少一个KTHREAD等待锁作为一个结果,设置了适当的指针链接代码(见图2)。然后把线程进入休眠状态,如同前面的例子中,通过调度类特定的休眠习惯(ts_sleep())。插入同步对象使用sleepq_insert()接口描述上个月休眠队列。在检票口的等待者空间递增,代码执行优先级反转检查(现在的turnstile_block()例程的一部分)。同样的规则适用于:如果锁保持器的优先级是较低的(差)比请求的线程的优先级,所以请求线程的优先级被任性的支架;持有人的t_epri字段被设置到新的优先级,并继承者指针在检票口与内核线程。此时,调度员通过调用swtch()输入,猛拉关闭另一个内核线程调度队列。

唤醒机制启动如前面所述,如果有上的锁的线程阻塞,锁定出口例程的调用将导致一个turnstile_wakeup()。在Solaris 7的代码上的锁阻塞的所有线程被唤醒,而不是只是一个潜在的几个线程醒来2.5.1/2.6的情况下。熟悉周围操作系统设计的问题的读者可能已经看到惊群问题,这是一个丰富多彩的术语,用来描述一种情况,即多个线程正在等待相同的资源被唤醒,他们都取得了可运行,多处理器系统上,它们都使资源在同一时间被获取。

在Sun编码的Solaris 7中的一个足够通用的方式turnstile_wakeup()中,从而使一个单一的的线程唤醒可以无误地执行,而不是所有线程不可避免地一起醒来。不同的负载下的力竭性测试显示,在实践中,我们极少结束大量的线程阻塞链,因此几乎从不碰到惊群问题。"唤醒所有(wakeup-all)"的实施还解决了一些使唤醒一个场景变得棘手的位同步问题。

查看详情

十字转门造价信息

  • 市场价
  • 信息价
  • 询价

全高十字转门

  • 品种:转闸;型号:JHA 504;工作方式:半自动;机芯:单机芯;材质:不锈钢;规格尺寸:2210×1500×2300
  • 捷恒安
  • 13%
  • 深圳市捷成安科技有限公司
  • 2022-12-06
查看价格

全高十字转门

  • 品种:转闸;型号:T-706;工作方式:半自动;材质:不锈钢;规格尺寸:2210×1500×2300
  • 通道闸
  • 13%
  • 深圳市通道闸科技有限公司
  • 2022-12-06
查看价格

全高十字转门

  • 品种:转闸;型号:JHA 504;工作方式:半自动;机芯:单机芯;材质:不锈钢;规格尺寸:2210×1500×2300
  • 捷恒安
  • 13%
  • 深圳市捷恒安智能科技有限公司沈阳办事处
  • 2022-12-06
查看价格

十字

  • 品种:十字镐;
  • 四川国光
  • 13%
  • 重庆禾之春农业发展有限公司
  • 2022-12-06
查看价格

十字羊镐

  • 品种:十字洋搞;
  • 斯达利
  • 13%
  • 武汉骏宇茂贸易有限公司
  • 2022-12-06
查看价格

座吊

  • 提升质量30t
  • 台班
  • 汕头市2012年3季度信息价
  • 建筑工程
查看价格

座吊

  • 提升质量60t
  • 台班
  • 汕头市2012年3季度信息价
  • 建筑工程
查看价格

座吊

  • 提升质量30t
  • 台班
  • 汕头市2012年2季度信息价
  • 建筑工程
查看价格

座吊

  • 提升质量60t
  • 台班
  • 汕头市2012年2季度信息价
  • 建筑工程
查看价格

座吊

  • 提升质量60t
  • 台班
  • 汕头市2011年4季度信息价
  • 建筑工程
查看价格

十字

  • 十字批头普通
  • 4465根
  • 1
  • 不含税费 | 不含运费
  • 2015-01-05
查看价格

十字

  • 十字批头优质
  • 3780根
  • 1
  • 不含税费 | 不含运费
  • 2015-01-05
查看价格

成品十字

  • 焊接十字型钢 Q345B
  • 100t
  • 3
  • 综合
  • 中高档
  • 含税费 | 含运费
  • 2018-09-17
查看价格

十字

  • A系列十字形螺丝刀批起子改锥 62322
  • 1.0把
  • 3
  • 世达
  • 不含税费 | 不含运费
  • 2015-12-14
查看价格

十字批头

  • 6.3mm10mm十字米字旋具套筒头 螺丝刀批头1/4 6.3mm十字形旋具套筒 #1
  • 10.0支
  • 3
  • SATA世达
  • 不含税费 | 不含运费
  • 2015-12-10
查看价格

十字转门主要作用

当内核线程需要阻塞一个请求锁时,互斥锁和RW锁会使用turnstile。休眠队列在处理其他资源等待时无法通过优先级继承处理优先级反转问题时的函数来解决,turnstiles的建立就是为了解决这个问题。

查看详情

十字转门常见问题

查看详情

十字转门文献

十字钢柱 十字钢柱

十字钢柱

格式:pdf

大小:21KB

页数: 5页

1 浙江万航钢结构有限公司 钢 结 构 十 字 钢 柱 制 作 工 艺 2 万航钢结构 文件编号 WH-2010-0804 “十字”钢柱生产作 业指导书 版 本 号 页 次 共 5页 1、“十字”钢柱生产工艺路线 1、1 平板拼接、下料。 1、2 H 钢的组焊 ; 1、3H 钢分割成 T 型钢 1、4T 型钢、 H 钢的校形 1、5“十字”柱的组焊 1、6校正 1、7装配、焊接柱底板、连接板、耳板、牛腿、节点加劲板等 2、H 型钢、 T 型钢的制作 2、1制作“十字”钢柱的 H 型钢可以采用轧制 T 型钢或者 H 型钢从腹板上下分 割成两个 T 型钢,亦可采用焊接的方法分别制作 H 型钢和从焊好的 H 型钢分切 成 T 型钢。 2、2焊接 H 型钢的制作请按 《H 钢制作及门式埋弧焊作业指导书》 的要求制作。 2、3焊接 T 型钢的制作 2、3、1方法之一:开料时腹板按 2倍宽度开

取十字断锁钥匙窍门 取十字断锁钥匙窍门

取十字断锁钥匙窍门

格式:pdf

大小:21KB

页数: 1页

方法 1.从里面卸下锁子的后盖,用窄铁条或者细一点的铁丝, 从门里面往外捅出钥匙。方法 2.看看钥匙有没有错位,找个医用镊 子夹,如果镊不住,找一段铁丝弯个小钩勾出来。方法 3.把缝衣针 烧红弯曲成小钩状,找到断钥匙的地方,发现有活动的缝隙,找到 可以活动的小铜柱,用两根针钩住断钥匙,慢慢的拉出来,可用镊 子辅助。

十字转门、全高转闸,旋转门安装手册

所有多奥高度十字转门是设计用于结合高质量,高安全度的壁垒的行政中心的入口、工业园区和军事机构。一个全焊接钢转子与直臂是基于在一个顶端青铜轴承和一个球与锥型轴承上运行的。两个转子可以在空间交错是最至关重要的。进入和离开都可以通过由客户自己订购的读卡器、按钮或任何其他类型的控制器控制。所有控件都封装在一个装置内,因此没有必要有单独的开关或控制盒。电压是来自于变压器形成24V的直流整流电路。

一个防止两个通道在同一时间工作

一个以自我为中心的机制来确保可以完全从头旋转到重置位置

反备份原理

一个反备份原理是当头从静止状态旋转到60°将会阻止反转

标准产品技术参数:

方向:左右通过

工作方式:手动操作

材料:机箱:304不锈钢

转子:304不锈钢

运行:电力控制,两个方向通过

安全保证: 通过定子线棒避免通过“死区”

电源供应:115/230 V 交流 50/60Hz

额定功率:待机或者通道 50Va (报警状态 50Va)

电压:直流24V

电源故障: 在紧急状态或者隔离电源的旋转门可以配置自由旋转防故障配置或者失败故障,即锁在原位置,其中任何一个都适用一个或者两个方向。

工作温度: 0-55° C

环境温度: -25 to +55° C

相对温度: 95% Maximum

第三部分 使用说明书

这一节中包含的信息是指导人员如何正确使用旋转门的基础。

操作程序

旋转门的操作程序在下面详细表明并告知如何通过旋转门的两个方向的顺序:

1. 这个转子通常是被锁定的,除非是指定了一个免费的入口/出口选项指定

2. 如果合适接入控制装置

3. 在控制器接受到一个信号这个转子将被解锁和自由旋转

4. 通过通道,用你的手推动转子

5. 转子会自动锁定它的新位置

重要注意事项

只有一个人在一个时间通过旋转门

大型包裹需放在您的前面

任何物品被夹在转子当中,就马上停止或者不能强行通过同一方向

十字旋转门的可选模型:

注意:后面的两个模型适合单通道

第四部分 技术参数

1、单通道

外壳材料:304 不锈钢

运行: 手动操作

旋转方向: A. 双向 B. 单向

控制器:可根据客户的需要采用微电脑控制器

接触面: 标准的输入和输出可用于其他集成系统

信号源: 1. 干接点

2. 高低电平信号

转子工作电压: 交流220V±10%

电源供应: 交流220V±10%

直流24V3A±10%

直流12V3A±10%

环境: 室内/室外

温度:-30℃ -- 80℃

湿度 :5% --- 90%

转换时间: 1s

通行速度: 25人/分

故障状态: 断电和给一个免费的通道

运行故障率:

5亿无故障

外箱保护: 防水密封件

读卡器位置: 4个

安装和维修通道: 1个

附加设备:

IC/ID读卡器 , 条型码读卡器 ,其他R/W设备, UPS, 红外检测器

外壳材料 :304 不锈钢

旋转方向: A. 双向 B. 单向

控制器: 可根据客户的需要采用微电脑控制器

接触面: 标准的输入和输出可用于其他集成系统

信号源: 1. 干接点

2. 高低电平信号

转子工作电压: 交流220V±10%

电源供应: 交流220V±10%

直流24V3A±10%

直流12V3A±10%

环境: 室内/室外

温度:-30℃ -- 80℃

湿度 : 5% --- 90%

转换时间: 1s

通行速度: 25人/分

故障状态: 断电和给一个免费的通道

运行故障率:

5亿无故障

外箱保护: 防水密封件

读卡器位置 : 4个

安装和维修通道: 1个

附加设备:

IC/ID读卡器, 条型码读卡器 ,其他R/W 设备 ,UPS, 红外检测器

第五部分 机器安装

机芯箱

为了方便机芯箱安装和后期维护,安装地点从地面到房屋顶板至少需2600mm高.

安装注意事项

布线

导线管从地面通向DB531,主要接电源线和控制线或数据线

注意: 所有的从顶到地的空管都能用来走线,最好在方便连控制板的地方接布线。

地下布线

布线之前,请对照布线图核实实地情况。我们推荐用直径20mm的金属线布在地面50mm一下,这主要用来防水。

需要两根导线管分别给电源线和控制信号线用,而且这两种线一定要分开(弱点和强电)。一个外围设备最好用多芯线来连接,偏于后期维护。

所有的布线横切面至少要有0.5m㎡并在带线外预留4米以供备用。

安装前

检查地面是否水平、机芯箱体空间,通道宽度以及一切尺寸要求,可以参考机器尺寸图。

工具包(客户自己安装需自备)

包括:

锤子

活动扳手

六角扳手一套

大小十字一自螺丝刀各一个

请参照以下步骤:

单通道:

1.竖起A并上好螺丝

2. 固定D和B,上好螺丝

3 .固定A和B,上好牌螺丝

4 .安装好C部分到B,完成整个安装过程

5. 要确保整个机器水平,如有必要可适量加垫片

双通道 :

1确认3的位置并固定好

2确认2和4的在合适的位置,使6能和2,3,4组装起来

3固定1,5,6,完成双通道闸门的安装

4要确保整个机器水平,如有必要可适量加垫片.

第6部分 维修和维护

日常护理

1. 确保在断电.

2. 打开顶盖.

3. 检查弹簧的弹性以确保闸机的正常运行.

4.检查阻尼器(如有安装)的正常性

5. 检查转轴是否有磨损的迹象。

6.检查维修孔位.

7. 开关电源.

8. 检查整个系统的效果.

9.最后检查所有螺丝是否拧紧.

线路板

这部分非常稳定,不需要维修,只要保持清洁,无灰尘即可。

维护:

唯一的调整的是螺丝的松紧度.

日常护理

要定期清洗旋转门,并擦拭防锈油。

日常清洁:

清洁:肥皂或温和的洗涤剂.

方法:用沾水的海绵擦拭。

指纹

清洁:使用肥皂,温水或有机溶剂 (丙酮,酒精)

方法:必要时用干净的水擦洗干净

顽固的污渍和变色

清洁:温和的清洁剂.

方法:用清水冲洗干净并擦干.

油,润滑剂的痕迹

清洁:有机溶剂(丙酮和酒精).

方法:用肥皂清洁后再用清水冲洗干净并擦干.

锈斑

清洁: 草酸. 用沾有草酸的抹布擦拭闸机表面,并让草酸在闸机表面保持15-20分钟,再用清水冲洗掉。 也可以用国内的清洁剂清洗。

方法:冲洗和清洁(在使用前应观察酸性溶剂).

表面刮痕:

清洁:轻轻的擦拭并用水清洁喷漆并自然干。

深深的划痕导致的生锈:

清洁: 用锋利的小刀去除锈斑. 喷防锈漆

电控部分

在保险丝损坏的情况下更换保险丝,其他无需日常维护.

注意: 在换灯板的时候,请确保手指不要背划伤。

查看详情

相关推荐

立即注册
免费服务热线: 400-888-9639