- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经完成了创建和启动计时器的手册页。
http://man7.org/linux/man-pages/man2/timerfd_create.2.html
但是,除了 arm(start) 和 disarm(stop) 之外,我不确定 struct itimerspec 的字段“it_value”的用途。
问题:当为这个字段指定一个非零值时会发生什么。手册页记录非零值将启动计时器并记录为计时器有效期?定时器到期是什么意思?定时器超时有什么影响?
要启动(设置)定时器,可以给出从 1 ns 到等于定时器间隔(非零)的值。这两种情况下的区别和预期行为是什么
方法一:使定时器过期时间等于interval
int timerfd = timerfd_create(CLOCK_MONOTONIC,0);
int milliseconds = 50;// 50 ms for example
struct itimerspec timspec;
timspec.it_interval.tv_sec = 0;
timspec.it_interval.tv_nsec = milliseconds * 1000000;
timspec.it_value.tv_sec = timspec.it_interval.tv_sec;
timspec.it_value.tv_nsec = timspec.it_interval.tv_nsec;
int res = timerfd_settime(timerfd, 0, &timspec, 0);
方法二:定时器过期小于定时器间隔
int timerfd = timerfd_create(CLOCK_MONOTONIC,0);
int milliseconds = 50;// 50 ms for example
struct itimerspec timspec;
timspec.it_interval.tv_sec = 0;
timspec.it_interval.tv_nsec = milliseconds * 1000000;
timspec.it_value.tv_sec = 0;
timspec.it_value.tv_nsec = 1;
int res = timerfd_settime(timerfd, 0, &timspec, 0);
最佳答案
However, i am not sure the use of the field "it_value" of struct itimerspec other than arm(start) and disarm(stop).
显然,您的兴趣在于将此字段与 timerfd_settime()
的第二个参数一起使用,而不是解释第三个参数指向的结构中设置的值(如果有的话) , 或由 timerfd_gettime()
填写。不过,它们几乎都是一样的。
您似乎在键入启用和禁用计时器时专注于错误的事情。正如您链接的联机帮助页所说,
The
new_value
argument specifies the initial expiration and interval for the timer.
(强调)。也就是说,struct itimerspec
的 it_value
传达下一次计时器到期前的时间量(或该到期的绝对时间,取决于标志),除了两个字段都为零表示计时器永远不会过期——它被解除——而不是它会立即过期。此成员传递的值与 it_interval
成员传递的值没有任何特定的相关性。
由此可见,timerfd_settime()
可用于武装一个解除武装的计时器或解除武装的计时器,具体取决于传递给它的 it_value
,但这些是特殊结果更一般的行为。一般情况下,它用于更改定时器下一次到期前的时间量,以及后续到期之间的时间增量。
To start(arm) a timer, one can give value ranging from 1 ns to value equal to timer interval(non-zero).
... 或更多。下一次到期前的延迟不限于间隔的长度。作为一种极端情况,间隔可以为零,这样定时器在超时一次后就被解除。
what would be the difference and the expected behavior in these two cases
Method1: Make the timer expiration equal to [nonzero] interval
计时器将在指定的时间量(等于间隔)后首先到期。每次过期都会重置为interval给定的时间。
Method 2: [nonzero] Timer expiration less then [nonzero] timer interval
计时器将在指定的时间量(小于间隔)后首先到期。每次过期都会重置为interval给定的时间。
关于c - 周期性 linux 定时器的定时器到期值表示什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43925582/
通过Dropbox oAuth2 API获取的访问 token 的生存期是多少? https://api.dropbox.com/1/oauth2/token之后的答案类似于 { "acces
在 Braintree 中,当我生成带有 $customerId 的客户端 token 时,将该客户端 token 保存到数据库并在以后重新使用它有多可靠? 我总是有一个用户对应一个 $custome
我是新手,正在尝试编写一个简单的登录应用程序。当我离开登录页面一段时间并输入用户名和密码时,它不会登录,而是会执行 session 过期行为。我检查了日志,发现每当我收到 INFO - Session
我想导航到刷新 token 过期时的登录 View 。我如何在Android中使用 OkHttp 处理这种情况。刷新 token 到期时,服务器以错误代码 403禁止的响应。有什么方法可以处理刷新 t
我想知道 Backbone 模型/ Controller 是否有一种标准方法来处理 session 结束。我正在使用 node.js 作为我的 webapp 的后端,现在我将 session 存储在内
我正在使用 https://www.paypal.com/cgi-bin/webscr 用于进行 PayPal 付款。当任何用户点击 PayNow 按钮时,它将导航到用户输入其凭据的 PayPal 页
我们最近注册了一个 iOS Enterprise 帐户用于内部应用分发。 搜索论坛发现两件事我想得到确认: 1- 企业分发证书有效期为 3 年。这是否意味着我们需要在此时使用新证书重新构建应用程序,否
我遇到了一个奇怪的场景。基本上在我正在做的每个网页上 session_start(); if(!isset($_SESSION['login'])) header("Location: log
有许多工具可用于监控通过 HTTPS 提供的服务的 SSL 过期,例如我们使用 https://github.com/prometheus/blackbox_exporter当 SSL 证书在内部和外
我正在使用 Vapor 4 开发一个 Web 应用程序。在请求之间一次将客户端制作的数据保存在服务器端几分钟会很有用。我想使用 session 来做到这一点。但是,我对如何在设定时间后自动销毁这些数据
我正在使用带有自定义身份验证的 firebase 9.x。根据文档, token 到期时间不能超过一小时。是否有一个我可以注册的监听器,当 token 过期时将调用它。 该文档还讨论了 token 的
正在关注 http://code.google.com/apis/gmail/oauth/protocol.html#imap我正在尝试为使用 OAuth 的 Gmail 实现 IMAP 客户端。 我
试图确定是否由对 Accounts.sendResetPasswordEmail() 的调用生成的 token 将永远过期。我在 accounts-password 上找不到任何进一步的文档。包超出了
编辑:我对这本书的当前状态不感兴趣。这是各种结账的历史记录。 实际上,整个问题可能格式错误,无法回答。但无论如何我得到了答案,这很好。我主要是在寻找WHEN -> THEN结构。 我有books可以检
根据我的理解,在使用 Drive Java API 时,建议构建一个 Drive 类的实例,然后存储它,以便其他线程可以共享它。如果持有对 Drive 实例的引用的进程是一个长时间运行的进程(即无限期
我读到的关于 cookie 的所有内容都说,将 cookie 的到期时间设置为零应该使其成为“ session ”cookie,浏览器将在退出时将其删除。 http://www.cookiecentr
我正在制作一个使用jwt来验证数据库调用的 Angular 应用程序。 就是当 token 在服务器上过期时,由于过期的 token 仍在本地存储中,因此应用程序开始提供空白页而不是数据。经过一些研究
我在grails应用程序中使用spring安全性。在其他浏览器上使用相同的用户名登录时,我需要使上一个 session 到期。并发 session 限制是否有帮助?这该怎么做? 最佳答案 I need
当我向手机发送推送通知时遇到了麻烦,它返回了以下错误: [X-SubscriptionStatus] => Expired [X-NotificationStatus] => Dropped [X-D
我需要创建一个用户登录/注销/ session 到期跟踪页面(ASP.Net)..很明显,当用户登录和注销时,我可以调用我的跟踪页面。如何检测 session 过期? 最佳答案 在有状态应用程序中,最
我是一名优秀的程序员,十分优秀!