我正在寻找集合协调算法的实现.问题在于:有两个集合,其中元素由位于不同机器上的一些相对紧凑的值(例如UUID或MD5/SHA1 /任何散列)标识.这些集合的元素相对较少,我希望在传输最少量的数据时同步这些集合.大多数谷歌搜索引领这里.这是GPL实施的似乎是最先进的任务方法.问题是我不能在我的应用程序中使用GPL代码.最有可能的是我必须使用类似nzmath的东西重新实现它,但也许还有其他实现(最好是Python或C/C++),或者还有其他更好的算法?
对于AngularJS应用程序,建议通过console.log使用$ log服务.此类日志记录的一个常见用例是在运行测试时看到调试打印.问题是,angular-mocks默认静音$ log,用模拟替换它.好吧,我有时需要测试我的调试打印,但我只需要经常看到它.问题是,默认行为坚持使用虚拟日志记录,我甚至没有看到恢复真实$ log的正确方法.我做了一个jsfiddle示例来说明它,尝试运行它,同时查看devtools控制台http://jsfiddle.net/ivan4th/EnvL9/
var myApp = angular.module('myApp', []);
describe('myApp', function () {
var element, rootScope;
beforeEach(module('myApp'));
it('does something', inject(function ($log) {
$log.log("this message gets eaten by angular-mocks");
console.log("this message is visible though");
}));
});
Run Code Online (Sandbox Code Playgroud)
跳过第一条消息,第二条消息按预期显示.为什么会使用这种奇怪的行为,除了不使用$ log之外还有什么方法可以修复它吗?