zoukankan      html  css  js  c++  java
  • 分析Ubuntu18.04启动后的各种任务

    jello@jello:~$ ps -A
      PID TTY          TIME CMD
        1 ?        00:00:02 systemd    由idle进程(进程号为0的进程,那这里怎么没有进程号为0的进程呢?)创建(也就是常说的init进程),名为systemd(system daemon:系统守护进程),进程ID号为1,完成系统的初始化,是系统中所有用户进程的祖先进程
        2 ?        00:00:00 kthreadd  传说中的2号进程,始终运行在内核态,负责所有内核线程的调度和管理
        4 ?        00:00:00 kworker/0:0H 正在cpu核心 0上工作的第0个线程. 0:0的意义:前一个0表示处理器核心0,后面的0表示第0个线程;H的意义:表示优先级很高(nice值小于0)
        6 ?        00:00:00 mm_percpu_wq
        7 ?        00:00:00 ksoftirqd/0  这是一个linux内核线程,辅助处理处理器0上的软中断,每个处理器都会有一个这样的线程
        8 ?        00:00:01 rcu_sched 这是一个linux内核线程
        9 ?        00:00:00 rcu_bh  这是一个linux内核线程
       10 ?        00:00:00 migration/0
       11 ?        00:00:00 watchdog/0
       12 ?        00:00:00 cpuhp/0
       13 ?        00:00:00 cpuhp/1
       14 ?        00:00:00 watchdog/1
       15 ?        00:00:00 migration/1
       16 ?        00:00:00 ksoftirqd/1
       18 ?        00:00:00 kworker/1:0H 正在cpu核心1上工作的第0个线程
       19 ?        00:00:00 cpuhp/2
       20 ?        00:00:00 watchdog/2
       21 ?        00:00:00 migration/2
       22 ?        00:00:00 ksoftirqd/2
       24 ?        00:00:00 kworker/2:0H 正在cpu核心 2上工作的第0个线程
       25 ?        00:00:00 cpuhp/3
       26 ?        00:00:00 watchdog/3
       27 ?        00:00:00 migration/3
       28 ?        00:00:00 ksoftirqd/3
       30 ?        00:00:00 kworker/3:0H 正在cpu核心 3上工作的第0个线程
       31 ?        00:00:00 cpuhp/4
       32 ?        00:00:00 watchdog/4
       33 ?        00:00:00 migration/4
       34 ?        00:00:00 ksoftirqd/4
       36 ?        00:00:00 kworker/4:0H 正在cpu核心 4上工作的第0个线程
       37 ?        00:00:00 cpuhp/5
       38 ?        00:00:00 watchdog/5
       39 ?        00:00:00 migration/5
       40 ?        00:00:00 ksoftirqd/5
       41 ?        00:00:00 kworker/5:0 正在cpu核心 0上工作的第0个线程
       42 ?        00:00:00 kworker/5:0H 正在cpu核心 0上工作的第0个线程
       43 ?        00:00:00 cpuhp/6
       44 ?        00:00:00 watchdog/6
       45 ?        00:00:00 migration/6
       46 ?        00:00:00 ksoftirqd/6
       48 ?        00:00:00 kworker/6:0H 正在cpu核心 6上工作的第0个线程
       49 ?        00:00:00 cpuhp/7
       50 ?        00:00:00 watchdog/7
       51 ?        00:00:00 migration/7
       52 ?        00:00:00 ksoftirqd/7
       54 ?        00:00:00 kworker/7:0H 正在cpu核心 7上工作的第0个线程
       55 ?        00:00:00 cpuhp/8
       56 ?        00:00:00 watchdog/8
       57 ?        00:00:00 migration/8
       58 ?        00:00:00 ksoftirqd/8
       59 ?        00:00:00 kworker/8:0 正在cpu核心 8上工作的第0个线程
       60 ?        00:00:00 kworker/8:0H 正在cpu核心 8上工作的第0个线程
       61 ?        00:00:00 cpuhp/9
       62 ?        00:00:00 watchdog/9
       63 ?        00:00:00 migration/9
       64 ?        00:00:00 ksoftirqd/9
       66 ?        00:00:00 kworker/9:0H 正在cpu核心 9上工作的第0个线程
       67 ?        00:00:00 cpuhp/10
       68 ?        00:00:00 watchdog/10
       69 ?        00:00:00 migration/10
       70 ?        00:00:00 ksoftirqd/10
       72 ?        00:00:00 kworker/10:0H 正在cpu核心 10上工作的第0个线程
       73 ?        00:00:00 cpuhp/11
       74 ?        00:00:00 watchdog/11
       75 ?        00:00:00 migration/11
       76 ?        00:00:00 ksoftirqd/11
       78 ?        00:00:00 kworker/11:0H 正在cpu核心 11上工作的第0个线程
       79 ?        00:00:00 cpuhp/12
       80 ?        00:00:00 watchdog/12
       81 ?        00:00:00 migration/12
       82 ?        00:00:00 ksoftirqd/12
       84 ?        00:00:00 kworker/12:0H 正在cpu核心 12上工作的第0个线程
       85 ?        00:00:00 cpuhp/13
       86 ?        00:00:00 watchdog/13
       87 ?        00:00:00 migration/13
       88 ?        00:00:00 ksoftirqd/13
       90 ?        00:00:00 kworker/13:0H 正在cpu核心 13上工作的第0个线程
       91 ?        00:00:00 cpuhp/14
       92 ?        00:00:00 watchdog/14
       93 ?        00:00:00 migration/14
       94 ?        00:00:00 ksoftirqd/14
       96 ?        00:00:00 kworker/14:0H 正在cpu核心 14上工作的第0个线程
       97 ?        00:00:00 cpuhp/15
       98 ?        00:00:00 watchdog/15
       99 ?        00:00:00 migration/15
      100 ?        00:00:00 ksoftirqd/15
      102 ?        00:00:00 kworker/15:0H 正在cpu核心 15上工作的第0个线程
      103 ?        00:00:00 cpuhp/16
      104 ?        00:00:00 watchdog/16
      105 ?        00:00:00 migration/16
      106 ?        00:00:00 ksoftirqd/16
      107 ?        00:00:00 kworker/16:0
      108 ?        00:00:00 kworker/16:0H 正在cpu核心 16上工作的第0个线程
      109 ?        00:00:00 cpuhp/17
      110 ?        00:00:00 watchdog/17
      111 ?        00:00:00 migration/17
      112 ?        00:00:00 ksoftirqd/17
      113 ?        00:00:00 kworker/17:0 正在cpu核心 17上工作的第0个线程
      114 ?        00:00:00 kworker/17:0H 正在cpu核心 17上工作的第0个线程
      115 ?        00:00:00 cpuhp/18
      116 ?        00:00:00 watchdog/18
      117 ?        00:00:00 migration/18
      118 ?        00:00:00 ksoftirqd/18
      119 ?        00:00:00 kworker/18:0 正在cpu核心18上工作的第0个线程
      120 ?        00:00:00 kworker/18:0H 正在cpu核心 18上工作的第0个线程
      121 ?        00:00:00 cpuhp/19
      122 ?        00:00:00 watchdog/19
      123 ?        00:00:00 migration/19
      124 ?        00:00:00 ksoftirqd/19
      125 ?        00:00:00 kworker/19:0 正在cpu核心 19上工作的第0个线程
      126 ?        00:00:00 kworker/19:0H 正在cpu核心 19上工作的第0个线程
      127 ?        00:00:00 kdevtmpfs
      128 ?        00:00:00 netns
      129 ?        00:00:00 rcu_tasks_kthre
      130 ?        00:00:00 kauditd
      131 ?        00:00:00 kworker/0:1 正在cpu核心 0上工作的第1个线程
      132 ?        00:00:00 kworker/1:1 正在cpu核心 1上工作的第1个线程
      133 ?        00:00:00 khungtaskd
      134 ?        00:00:00 oom_reaper
      135 ?        00:00:00 writeback
      136 ?        00:00:00 kcompactd0
      137 ?        00:00:00 ksmd
      138 ?        00:00:00 khugepaged
      139 ?        00:00:00 crypto
      140 ?        00:00:00 kintegrityd
      141 ?        00:00:00 kblockd
      142 ?        00:00:00 ata_sff
      143 ?        00:00:00 md
      144 ?        00:00:00 edac-poller
      145 ?        00:00:00 devfreq_wq
      146 ?        00:00:00 watchdogd
      149 ?        00:00:00 kworker/4:1 正在cpu核心 4上工作的第1个线程
      150 ?        00:00:00 kworker/2:1 正在cpu核心 2上工作的第1个线程
      151 ?        00:00:00 kworker/5:1 正在cpu核心 5上工作的第1个线程
      152 ?        00:00:00 kworker/6:1 正在cpu核心 6上工作的第1个线程
      153 ?        00:00:00 kworker/7:1 正在cpu核心 7上工作的第1个线程
      156 ?        00:00:00 kworker/11:1 正在cpu核心 11上工作的第1个线程
      157 ?        00:00:00 kworker/10:1 正在cpu核心 10上工作的第1个线程
      158 ?        00:00:00 kworker/14:1 正在cpu核心 14上工作的第1个线程
      159 ?        00:00:00 kworker/15:1 正在cpu核心 15上工作的第1个线程
      160 ?        00:00:00 kworker/13:1 正在cpu核心 13上工作的第1个线程
      161 ?        00:00:00 kworker/16:1 正在cpu核心 16上工作的第1个线程
      162 ?        00:00:00 kworker/17:1 正在cpu核心 17上工作的第1个线程
      163 ?        00:00:00 kworker/18:1 正在cpu核心 18上工作的第1个线程
      164 ?        00:00:00 kworker/19:1 正在cpu核心 19上工作的第1个线程
      165 ?        00:00:00 kworker/12:1 正在cpu核心 12上工作的第1个线程
      167 ?        00:00:00 kswapd0
      168 ?        00:00:00 ecryptfs-kthrea
      210 ?        00:00:00 kthrotld
      211 ?        00:00:00 acpi_thermal_pm
      215 ?        00:00:00 ipv6_addrconf
      227 ?        00:00:00 kstrp
      248 ?        00:00:00 charger_manager
      251 ?        00:00:00 kworker/14:2 正在cpu核心 14上工作的第2个线程
      285 ?        00:00:00 kworker/6:2 正在cpu核心 16上工作的第2个线程
      317 ?        00:00:00 scsi_eh_0
      318 ?        00:00:00 scsi_tmf_0
      319 ?        00:00:00 scsi_eh_1
      320 ?        00:00:00 scsi_tmf_1
      321 ?        00:00:00 scsi_eh_2
      322 ?        00:00:00 scsi_tmf_2
      323 ?        00:00:00 scsi_eh_3
      324 ?        00:00:00 scsi_tmf_3
      325 ?        00:00:00 scsi_eh_4
      326 ?        00:00:00 scsi_tmf_4
      327 ?        00:00:00 scsi_eh_5
      328 ?        00:00:00 scsi_tmf_5
      332 ?        00:00:00 nvidia-modeset
      333 ?        00:00:00 kworker/2:2 正在cpu核心 2上工作的第2个线程
      336 ?        00:00:00 kworker/9:1H 正在cpu核心 9上工作的第1个线程
      356 ?        00:00:00 jbd2/sda3-8
      357 ?        00:00:00 ext4-rsv-conver
      390 ?        00:00:02 systemd-journal
      412 ?        00:00:00 systemd-udevd
      414 ?        00:00:00 kworker/15:1H 正在cpu核心 15上工作的第1个线程
      415 ?        00:00:00 kworker/10:1H 正在cpu核心 10上工作的第1个线程
      416 ?        00:00:00 kworker/10:2 正在cpu核心 10上工作的第2个线程
      420 ?        00:00:00 loop0
      427 ?        00:00:00 loop1
      428 ?        00:00:00 kworker/17:1H 正在cpu核心 17上工作的第1个线程
      429 ?        00:00:00 loop2
      440 ?        00:00:00 loop3
      441 ?        00:00:00 loop4
      442 ?        00:00:00 kworker/11:1H  正在cpu核心 11上工作的第1个线程
      455 ?        00:00:00 loop5
      457 ?        00:00:00 kworker/8:1H 正在cpu核心 18上工作的第1个线程
      458 ?        00:00:00 loop6
      468 ?        00:00:00 kworker/1:1H 正在cpu核心 1上工作的第1个线程
      470 ?        00:00:00 kworker/0:1H 正在cpu核心 0上工作的第1个线程
      471 ?        00:00:00 kworker/12:1H 正在cpu核心 12上工作的第1个线程
      472 ?        00:00:00 kworker/13:1H 正在cpu核心 13上工作的第1个线程
      477 ?        00:00:00 kworker/14:1H 正在cpu核心 14上工作的第1个线程
      480 ?        00:00:00 loop7
      481 ?        00:00:00 kworker/4:1H 正在cpu核心 14上工作的第1个线程
      482 ?        00:00:00 kworker/2:1H 正在cpu核心 2上工作的第1个线程
      483 ?        00:00:00 kworker/16:1H 正在cpu核心 16上工作的第1个线程
      484 ?        00:00:00 loop8
      510 ?        00:00:00 kworker/5:1H 正在cpu核心 5上工作的第1个线程
      511 ?        00:00:00 loop9
      512 ?        00:00:00 kworker/3:1H 正在cpu核心 3上工作的第1个线程
      548 ?        00:00:00 UVM global queu
      549 ?        00:00:00 irq/31-mei_me
      554 ?        00:00:00 UVM Tools Event
      565 ?        00:00:00 kworker/7:1H 正在cpu核心 7上工作的第1个线程
      566 ?        00:00:00 loop10
      599 ?        00:00:00 kworker/18:1H 正在cpu核心 18上工作的第1个线程
      608 ?        00:00:00 kworker/19:1H 正在cpu核心 19上工作的第1个线程
      612 ?        00:00:00 kworker/0:2 正在cpu核心 0上工作的第2个线程
      621 ?        00:00:00 loop11
      687 ?        00:00:00 loop12
      690 ?        00:00:00 loop13
      760 ?        00:00:00 cfg80211
      822 ?        00:00:00 loop14
      854 ?        00:00:00 kworker/6:1H 正在cpu核心 6上工作的第1个线程
      857 ?        00:00:00 loop15
      858 ?        00:00:00 loop16
      870 ?        00:00:00 loop17
      953 ?        00:00:00 loop18
     1115 ?        00:00:00 kworker/7:2 正在cpu核心 7上工作的第2个线程
     1126 ?        00:00:00 jbd2/sdb6-8
     1127 ?        00:00:00 ext4-rsv-conver
     1175 ?        00:00:00 systemd-resolve
     1177 ?        00:00:00 systemd-timesyn
     1269 ?        00:00:04 dbus-daemon
     1271 ?        00:00:01 NetworkManager
     1273 ?        00:00:00 systemd-logind
     1276 ?        00:00:02 acpid
     1278 ?        00:00:00 anacron
     1281 ?        00:00:01 snapd
     1289 ?        00:00:00 cron
     1290 ?        00:00:06 wpa_supplicant
     1294 ?        00:00:00 irqbalance
     1295 ?        00:00:00 udisksd
     1296 ?        00:00:00 avahi-daemon
     1299 ?        00:00:00 ModemManager
     1301 ?        00:00:00 accounts-daemon
     1302 ?        00:00:02 rsyslogd
     1304 ?        00:00:00 networkd-dispat
     1321 ?        00:00:00 avahi-daemon
     1347 ?        00:00:00 vmware-usbarbit
     1348 ?        00:00:00 polkitd
     1389 ?        00:00:00 gdm3
     1457 ?        00:00:00 upowerd
     1498 ?        00:00:00 RTW_CMD_THREAD
     1508 ?        00:00:00 gdm-session-wor
     1513 ?        00:00:00 systemd
     1514 ?        00:00:00 (sd-pam)
     1525 tty1     00:00:00 gdm-x-session
     1527 tty1     00:00:01 Xorg
     1530 ?        00:00:30 irq/32-nvidia
     1531 ?        00:00:00 nvidia
     1533 ?        00:00:00 nvidia-persiste
     1539 ?        00:00:00 dbus-daemon
     1545 tty1     00:00:00 gnome-session-b
     1547 ?        00:00:00 at-spi-bus-laun
     1552 ?        00:00:00 dbus-daemon
     1554 ?        00:00:00 at-spi2-registr
     1556 ?        00:00:00 kworker/13:2 正在cpu核心 13上工作的第2个线程
     1564 tty1     00:00:09 gnome-shell
     1572 ?        00:00:00 pulseaudio
     1573 ?        00:00:00 rtkit-daemon
     1605 tty1     00:00:00 ibus-daemon
     1608 tty1     00:00:00 ibus-dconf
     1611 tty1     00:00:00 ibus-x11
     1613 ?        00:00:00 ibus-portal
     1631 ?        00:00:00 whoopsie
     1635 ?        00:00:00 kerneloops
     1640 ?        00:00:00 boltd
     1644 ?        00:00:00 kerneloops
     1662 ?        00:00:00 iprt-VBoxWQueue
     1673 ?        00:00:17 packagekitd
     1676 tty1     00:00:00 gsd-xsettings
     1693 tty1     00:00:00 gsd-a11y-settin
     1695 tty1     00:00:00 gsd-clipboard
     1703 ?        00:00:00 iprt-VBoxTscThr
     1712 tty1     00:00:00 gsd-color
     1716 tty1     00:00:00 gsd-datetime
     1723 tty1     00:00:00 gsd-housekeepin
     1725 tty1     00:00:00 gsd-keyboard
     1731 tty1     00:00:00 gsd-media-keys
     1737 tty1     00:00:00 gsd-mouse
     1738 tty1     00:00:00 gsd-power
     1748 tty1     00:00:00 gsd-print-notif
     1756 tty1     00:00:00 gsd-rfkill
     1764 tty1     00:00:00 gsd-screensaver
     1766 tty1     00:00:00 gsd-sharing
     1776 tty1     00:00:00 gsd-smartcard
     1784 tty1     00:00:00 gsd-sound
     1792 tty1     00:00:00 gsd-wacom
     1825 ?        00:00:00 colord
     1842 ?        00:00:00 vmware-vmblock-
     1871 ?        00:00:00 vmware-authdlau
     1876 tty1     00:00:00 ibus-engine-sim
     1887 ?        00:00:00 dhclient
     2165 ?        00:00:00 kworker/1:0 正在cpu核心 1上工作的第0个线程
     2509 ?        00:00:00 gdm-session-wor
     2513 ?        00:00:00 systemd
     2514 ?        00:00:00 (sd-pam)
     2528 ?        00:00:00 gnome-keyring-d
     2533 tty2     00:00:00 gdm-x-session
     2535 tty2     00:01:39 Xorg
     2541 ?        00:00:01 dbus-daemon
     2547 tty2     00:00:00 gnome-session-b
     2569 ?        00:00:05 fcitx
     2626 ?        00:00:02 dbus-daemon
     2634 ?        00:00:00 fcitx-dbus-watc
     2635 ?        00:00:00 ssh-agent
     2640 ?        00:00:00 at-spi-bus-laun
     2645 ?        00:00:00 dbus-daemon
     2647 ?        00:00:00 at-spi2-registr
     2664 tty2     00:03:11 gnome-shell
     2670 ?        00:00:00 gvfsd
     2675 ?        00:00:00 gvfsd-fuse
     2686 ?        00:00:01 pulseaudio
     2715 tty2     00:00:00 ibus-daemon
     2719 tty2     00:00:00 ibus-dconf
     2721 tty2     00:00:00 ibus-x11
     2723 ?        00:00:00 ibus-portal
     2734 ?        00:00:00 gnome-shell-cal
     2738 ?        00:00:00 evolution-sourc
     2746 ?        00:00:00 goa-daemon
     2754 ?        00:00:00 dconf-service
     2764 ?        00:00:00 goa-identity-se
     2768 ?        00:00:00 gvfs-udisks2-vo
     2772 ?        00:00:00 gvfs-mtp-volume
     2776 ?        00:00:00 gvfs-afc-volume
     2781 ?        00:00:00 gvfs-gphoto2-vo
     2785 ?        00:00:00 gvfs-goa-volume
     2789 tty2     00:00:00 gsd-power
     2790 tty2     00:00:00 gsd-print-notif
     2792 tty2     00:00:00 gsd-rfkill
     2793 tty2     00:00:00 gsd-screensaver
     2794 tty2     00:00:00 gsd-sharing
     2796 tty2     00:00:00 gsd-smartcard
     2800 tty2     00:00:00 gsd-sound
     2804 tty2     00:00:00 gsd-xsettings
     2807 tty2     00:00:00 gsd-wacom
     2817 tty2     00:00:00 gsd-a11y-settin
     2819 tty2     00:00:00 gsd-clipboard
     2821 tty2     00:00:00 gsd-color
     2824 tty2     00:00:00 gsd-datetime
     2825 tty2     00:00:00 gsd-housekeepin
     2826 tty2     00:00:00 gsd-keyboard
     2829 tty2     00:00:00 gsd-media-keys
     2834 tty2     00:00:00 gsd-mouse
     2875 tty2     00:00:07 gnome-software
     2879 tty2     00:00:01 nautilus-deskto
     2880 tty2     00:00:00 gsd-disk-utilit
     2903 ?        00:00:00 gvfsd-trash
     2912 ?        00:00:00 evolution-calen
     2915 tty2     00:00:00 gsd-printer
     2939 ?        00:00:00 evolution-calen
     2944 tty2     00:00:00 ibus-engine-sim
     2955 ?        00:00:00 evolution-addre
     2967 ?        00:00:00 evolution-addre
     2996 ?        00:00:00 gvfsd-metadata
     3001 ?        00:00:00 fwupd
     3015 ?        00:00:05 sogou-qimpanel
     3094 ?        00:00:00 kworker/12:2 正在cpu核心 12上工作的第2个线程
     3138 ?        00:00:00 kworker/8:2 正在cpu核心 8上工作的第2个线程
     3141 tty2     00:00:00 update-notifier
     3189 ?        00:00:04 http
     3190 ?        00:00:29 http
     3289 ?        00:00:00 cupsd
     3290 ?        00:00:00 cups-browsed
     3349 tty2     00:00:00 deja-dup-monito
     3380 ?        00:00:32 gnome-terminal-
     3387 pts/0    00:00:00 bash
     3403 ?        00:00:00 sogou-qimpanel-
     3510 ?        00:00:00 kworker/u40:0   u表示unbound的意思,此时40的含义就变成了work pool的ID,整体的意义即为work pool ID为4上0的第0个线程
     3535 tty2     00:02:02 firefox
     3605 tty2     00:00:49 Web Content
     3894 ?        00:00:00 http
     3943 tty2     00:00:16 Web Content
     4434 tty2     00:01:11 Web Content
     5031 tty2     00:01:03 Web Content
     5313 ?        00:00:00 kworker/11:0 正在cpu核心 11上工作的第0个线程
     5510 pts/1    00:00:00 bash
     5555 ?        00:00:00 kworker/3:1 正在cpu核心 3上工作的第1个线程
     8010 pts/2    00:00:00 make
     8124 ?        00:00:00 kworker/3:2 正在cpu核心 3上工作的第2个线程
     8448 ?        00:00:00 kworker/4:0 正在cpu核心 4上工作的第0个线程
     8554 pts/0    00:00:01 script
     8555 pts/2    00:00:00 bash
     8945 pts/2    00:00:00 make
     9205 pts/2    00:00:00 sh
     9207 pts/2    00:00:00 make
     9428 ?        00:00:00 kworker/u40:1  work pool ID为40上的第1个线程
    10731 ?        00:00:00 kworker/9:1 正在cpu核心 9上工作的第1个线程
    11579 pts/1    00:00:00 ps
    17539 ?        00:00:00 kworker/u40:2 work pool ID为40上的第2个线程
    17585 ?        00:00:01 kworker/u40:3 work pool ID为40上的第3个线程
    21192 ?        00:00:04 nautilus
    24127 ?        00:00:00 kworker/9:2 正在cpu核心 9上工作的第2个线程
    26277 ?        00:00:00 kworker/9:0 正在cpu核心 9上工作的第0个线程
    30916 ?        00:00:00 kworker/15:0 正在cpu核心 15上工作的第0个线程
    31702 pts/2    00:00:00 time
    31703 pts/2    00:00:00 make
    31708 pts/2    00:00:00 flock
    31709 pts/2    00:00:00 sh
    31710 pts/2    00:00:00 perl
    31712 pts/2    00:00:00 wget
    31713 pts/2    00:00:00 sh
    31714 pts/2    00:00:00 mkhash

  • 相关阅读:
    Loadrunner脚本自动关联和手动关联
    Linux常用命令大全
    linux软件的安装和卸载
    PL/SQL DEVELOPER执行计划的查看
    利用pl/sql执行计划评估SQL语句的性能简析
    LoadRunner监控Linux与Windows方法
    LR添加Windows和Linux压力机实战
    《JS设计模式笔记》 4,桥接模式
    《ES6基础教程》之 Call 方法和 Apply 方法
    《JS设计模式笔记》 3,观察者模式
  • 原文地址:https://www.cnblogs.com/dakewei/p/9986302.html
Copyright © 2011-2022 走看看