我正在为嵌入式系统开发调度程序.该调度程序将每隔X毫秒调用每个进程; 当然,这个时间可以为每个过程单独配置.
一切都被编码,并按照应有的方式调用每个进程; 我面临的问题是:想象一下我分别每10,15,5和30毫秒调用4个进程:
A: 10ms
B: 15ms
C: 5ms
D: 30ms
Run Code Online (Sandbox Code Playgroud)
随着时间推移产生的呼叫将是:
A |
A B A B |
C C C C C C C | processes being called
D |
----------------------------------
0 5 10 15 20 25 30 35... ms
Run Code Online (Sandbox Code Playgroud)
问题是当达到30ms时,所有进程都在同一时刻(一个接一个)被调用,这可能会延迟从这里开始的正确执行.
这可以通过为每个进程添加延迟(但保留其调用频率)来解决,因此频率停止是彼此的倍数.我的问题是我不知道如何计算应用于每个过程的延迟,因此最小化了碰撞次数.
是否有任何已知的算法或一些数学指导?
谢谢.
我一直在使用PHPass来密码我的密码很长一段时间.我承认仍然有一些我不完全理解(或忽略)正确散列密码的东西所以今天我正在审查我能找到的所有相关信息.
回顾PHPass文档,我已经踏入了这个:
除了实际散列之外,当新密码或密码被散列时,phpass透明地生成随机盐,并且它将散列类型,salt和密码拉伸迭代计数编码到它返回的"散列编码字符串"中.当phpass对存储的哈希验证密码或密码时,它同样透明地提取并使用哈希类型标识符,盐和"哈希编码字符串"中的迭代计数.因此,您不必费心自己进行腌制和拉伸 - phpass会为您处理这些问题.
我加粗了困扰我的句子.
我总是认为盐应该有些秘密,因为攻击者不应该知道它.因此,如果正确理解,PHPass会将相同哈希中使用的盐存储起来,以便在比较密码时能够使用它并检查是否有效.
我的问题是
我自己的CMS会自动将新参数添加到页面中的链接以指定给定的语言.
它工作得很好,但它并不总是将var放在相同的位置,给我一个相同页面/语言的链接:
www.xxx.yy/index.php?mod = blog&page = 3&lang = en
要么
www.xxx.yy/index.php?mod = blog&lang = en&page = 3
搜索引擎是否足够聪明,可以同时检测两个网址?或者会检测为两个不同的网址,因此将它们标记为重复内容?
无论如何我会解决这个问题,但很久以前我对此很好奇.
我有一个表单,用户可以在其中引入谷歌地图网址,以指定一些东西的地址.我一直在考虑通过Google Map API v3显示地图,让用户移动到所需的位置,通过按钮或其他东西自动获取该地点的URL并将其复制到输入.
我已经能够使用教程显示地图,但我无法在文档中找到我如何获取网址...
我想你不需要它,但这是我正在使用的简单代码:
var latlng = new google.maps.LatLng(-34.397, 150.644);
var options = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP,
mapTypeControl: false
};
var map = new google.maps.Map(document.getElementById('map-box'), options );
Run Code Online (Sandbox Code Playgroud) 用户关闭QMdiSubWindow时,有什么方法可以得到通知?我在QMdiArea或QMdiSubWindow中找不到任何提示我可以找到的信号。
我认为唯一的机会是通过继承QMdiSubWindow并重写close事件,但是还有其他方法吗?
我正在使用webpack 1.14.0,但是我遇到CommonsChunkPlugin了按照我打算的方式工作的问题.
我有一个与此类似的配置文件(我简化了它):
var webpack = require('webpack');
module.exports = {
context : __dirname,
output: {
filename: "[name].dist-[chunkhash].js",
chunkFilename: "chunk.[id]-[chunkhash].js",
path: 'js/min',
publicPath: '/js/min/',
pathinfo: true
},
// Entry points for the application
entry : {
"homepage": "/a/b/homepage.js",
"contact": "/a/b/contact.js",
"list": "/a/b/list.js"
},
resolve: {
packageAlias: false,
alias: {
"jquery": "/a/b/jquery",
"dependency-1": "/a/b/dependency-1",
"dependency-2": "/a/b/dependency-2"
}
},
plugins: [
new webpack.optimize.CommonsChunkPlugin({
name: "commons",
filename:"commons.js",
minChunks: 3
})
]
};
Run Code Online (Sandbox Code Playgroud)
据我所知,CommonsChunkPlugin将分析入口点和其他产生的块文件,搜索重复的模块并将它们放入一个新的"commons"块中.
我正在关注这些示例,并且除了没有任何模块的commons.js文件之外无法获得任何其他内容.
我得到的只是:
entry points.我从来没有使用Rails(只能回答我的问题),但我看到它在每个页面中都有表单的CSRF令牌.
我不明白为什么它使用两个meta标签:
<meta name="csrf-token" content="<%= form_authenticity_token %>" />
<meta name="csrf-param" content="authenticity_token" />
Run Code Online (Sandbox Code Playgroud)
为什么不只是csrf-token元?
<meta name="csrf-token" content="<%= form_authenticity_token %>" />
Run Code Online (Sandbox Code Playgroud)
有什么用csrf-param?
我正在使用jQuery 1.7中的新on()/ off()方法,阅读off()文档我看到以下句子:
由jQuery.proxy()或类似机制代理的处理程序都将具有相同的唯一ID(代理函数),因此将代理处理程序传递给.off可能会删除比预期更多的处理程序.在这些情况下,最好使用命名空间附加和删除事件处理程序.
那是我面临的情况:
function show(){
this.$element.on( 'click', '.close', $.proxy(this.hide, this) );
}
function hide(){
this.$element.off( 'click', '.close', $.proxy(this.hide, this) );
}
Run Code Online (Sandbox Code Playgroud)
如果我理解正确,所有对$ .proxy()的调用都有相同的uid,所以我可能会删除比需要更多的处理程序...
如果这是正确的,我不明白(不知道)如何附加处理程序使用命名空间.
algorithm ×1
google-maps ×1
javascript ×1
jquery ×1
math ×1
php ×1
phpass ×1
qt ×1
scheduling ×1
security ×1
seo ×1
webpack ×1