The macro creates an array of variables, one per CPU instance.
该宏创建了一个变量数组(每个 CPU 一个变量)。
2
This means that all temporary variables used by a macro are automatically renamed before the substitution occurs in order to prevent them from having conflicting names.
这意味着宏所使用的所有临时变量都会在替换发生之前自动重新进行命名,从而防止名字产生冲突。
3
There's no need to go through the read_inheritable_attribute macro to use attributes because these are class instance variables defined by ActiveRecord.