22
在this文章如何避免錯誤共享,剪斷對準下面的代碼是提出:雙括號的含義「[[foo()]] type name;」語法在c + +?
// C++ (using C++0x alignment syntax)
template<typename T>
struct cache_line_storage {
[[ align(CACHE_LINE_SIZE) ]] T data;
char pad[ CACHE_LINE_SIZE > sizeof(T)
? CACHE_LINE_SIZE - sizeof(T)
: 1 ];
};
什麼是4號線的含義是什麼? 我從來沒有見過這種雙括號的語法。