我有一个 25GB 的 numpy 数组字典。该词典如下所示:
"109c3708-3b0c-4868-a647-b9feb306c886_1"200x23、 type的 numpy 数组float64当我在循环中重复使用 pickle 加载数据时,加载时间会变慢(请参阅下面的代码和结果)。可能是什么原因造成的?
代码:
def load_pickle(file: int) -> dict:
with open(f"D:/data/batched/{file}.pickle", "rb") as handle:
return pickle.load(handle)
for i in range(0, 9):
print(f"\nIteration {i}")
start_time = time.time()
file = None
print(f"Unloaded file in {time.time() - start_time:.2f} seconds")
start_time = time.time()
file = load_pickle(0)
print(f"Loaded file in {time.time() - start_time:.2f} seconds")
Run Code Online (Sandbox Code Playgroud)
结果:
Iteration 0
Unloaded file in 0.00 seconds
Loaded file in 18.80 seconds
Iteration …Run Code Online (Sandbox Code Playgroud) 因此,在我的应用程序中是一个用于创建新用户的表单,其中包含有关用户的相关详细信息和信息.这里没有问题,只是当用户离开活动而没有按下确认按钮时会发生什么.
这就是我想要做的事情:
以下是我目前正在尝试的方法:
onDestroy()和isFinishing()函数来查找活动被杀死的时间,以覆盖上面的第1点(然后尝试并保存所有数据).onSaveInstanceState到一个包中(以覆盖上面的第2点)onSaveInstanceState因为更多资源而被杀死的活动存活下来,因此当重新创建它时,可以检索以前的状态(如上面的第3点)?任何帮助都将受到大力赞赏.
干杯!