小编Chr*_*oer的帖子

WaitForSingleObject的超时解决方案

当我使用WaitForSingleObject函数等待一个未发出信号的事件时,我发现在某些情况下,调用将在少于指定的超时时间内返回WAIT_TIMEOUT.只需在超时设置为1000毫秒的情况下循环调用,我已经看到呼叫返回的时间低至990毫秒(在WinXP上运行).我正在使用QueryPerformanceCounter来获得独立于系统时钟的时间测量,因此我认为时钟漂移可能不是一个答案.

这种行为对我来说没有任何实际问题,但我想更好地理解它.看起来它可能大致在计时器滴答的分辨率下工作.Microsoft是否会发布有关此功能精度的更多详细信息?我应该期待Vista的更高精度吗?

winapi

12
推荐指数
1
解决办法
5965
查看次数

使用 Firebase 的 push()/childByAutoID 生成的名称的唯一性保证是什么?

我想使用 Firebase 制作位置难以猜测的公开可读数据。因此,为了让某人访问存储在“元素 [元素 ID = X]”中的数据,我只想向他们发送“X”,而不是向他们发送“X”以及专门为他们提供访问权限的安全令牌到元素。Firebase 的push()childByAutoID看起来很自然:我可以授予对所有单个元素的公开读取访问权限,但拒绝公开列表。我的代码将完全没有令牌和随机数生成。自动生成的 ID 应该是唯一的,因此应该很难猜测。

Firebase.js看来,自动生成的 ID 的前 8 个字符是基于当前时间戳的,接下来的 12 个字符是使用Math.random(). 我认为iOS的框架做同样的事情,虽然我不能看到代码,库链接到两个SecRandomCopyBytesarc4random

就我而言,这看起来已经足够了,但是有没有人看到 Firebase 提供的关于我们是否可以指望这种行为的指导?我不想构建假设这些名称是相对强的随机字符串的代码,然后在升级到较新版本的 Firebase 时违反了该假设。

javascript security ios firebase

0
推荐指数
1
解决办法
630
查看次数

标签 统计

firebase ×1

ios ×1

javascript ×1

security ×1

winapi ×1