如何获得可用的堆栈构建计划列表?在某些系统上,我得到了,lts-3.7而另一些系统上lts-3.1。
我在 akka (java) 中遇到了发件人引用的问题,该引用在未来一段时间后消失。这是代码:
class MyActor extends UntypedActor {
@Override
public void onReceive(Object msg){
Future<Integer> future = Futures.future(new Callable<Integer>(){
@Override
public Integer call() throws Exception {
System.out.println(getSender()); //works fine
Thread.sleep(1000);
System.out.println(getSender()); //show deadLetter
return 42;
}
},getContext().dispatcher());
//do something with the future, pipe it or whatever
Patterns.pipe(future,getContext().dispatcher(),getSender());
}
}
Run Code Online (Sandbox Code Playgroud)
我可能错过了文档中的某些内容。
通常的说法是,在检查密码或哈希等内容时,字符串比较必须在恒定时间内完成,因此建议避免a == b. 但是,我运行以下脚本,结果不支持a==b第一个不同字符上短路的假设。
from time import perf_counter_ns
import random
def timed_cmp(a, b):
start = perf_counter_ns()
a == b
end = perf_counter_ns()
return end - start
def n_timed_cmp(n, a, b):
"average time for a==b done n times"
ts = [timed_cmp(a, b) for _ in range(n)]
return sum(ts) / len(ts)
def check_cmp_time():
random.seed(123)
# generate a random string of n characters
n = 2 ** 8
s = "".join([chr(random.randint(ord("a"), ord("z"))) for _ in range(n)])
# generate a …Run Code Online (Sandbox Code Playgroud)