我正在查看Java Thread Affinity lib(下面的链接),在一个示例中,使用1 << 3
设置了关联。有人知道为什么吗?
AffinitySupport.setAffinity(1 << 3);
我原本以为它会被设置为1或2,例如在2核心机器上,比如留在核心1或2.我显然在这里遗漏了一些东西。
答案 0 :(得分:0)
此语法使用左移位运算符:http://processing.org/reference/leftshift.html
所以基本上1 << 3
表示二进制1000
,所以这是十进制的8
。
答案 1 :(得分:0)
AffinitySupport.setAffinity()
的参数有点掩盖。
将关联设置为1 << 3
允许线程在逻辑CPU#3上运行。