我正在扩展DateTime,添加一些有用的方法和常量.
当new用于创建新对象时,一切都很好,但是当使用静态方法时,createFromFormat它总是返回原始DateTime对象,当然没有任何子方法可用.
我使用以下代码来规避这个问题.这是最好的方法吗?
namespace NoiseLabs\DateTime;
class DateTime extends \DateTime
{
static public function createFromFormat($format, $time)
{
$ext_dt = new self();
$ext_dt->setTimestamp(parent::createFromFormat($format, time)->getTimestamp());
return $ext_dt;
}
}
Run Code Online (Sandbox Code Playgroud) 我重写一个多线程的Linux-2.6.32 +应用程序以替换select用epoll.
epoll_create1(2)的手册页声明:
如果flags为0,则除了删除过时大小参数这一事实外,epoll_create1()与epoll_create()相同.
然而,这个过时的尺寸参数是不是被epoll_wait(2)用作maxevents?
epoll_wait(int epfd, struct epoll_event *events,
int maxevents, int timeout);
Run Code Online (Sandbox Code Playgroud)
这意味着当使用epoll时我们可以避免声明最大事件数量,epoll_create1但迟早我们必须在调用时引用它epoll_wait?如果是这样,那么epoll_create1进入游戏的重点是什么?
感谢您对此主题的启发.
设法在同一节点上成功并行运行集成测试,现在我想将它们分布在不同的节点上。在下面的示例中,我希望阶段IT 1和IT 2在不同节点上运行,而IT 3在原始节点上运行。通过使用node作为父级stage('IT 1')和node子级尝试了几种组合,但两者都出现语法错误。实现此目的的正确语法是什么?
pipeline {
agent { label '!master' }
stages {
stage('Integration Tests') {
parallel {
stage('IT 1 (slow)') {
steps {
sh 'run-it-1.sh'
}
}
stage('IT 2 (slow)') {
steps {
sh 'run-it-2.sh'
}
}
stage('IT 3 (quick)') {
steps {
sh 'run-it-3.sh'
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:使用label而不是node声明性管道的作品。下面的例子:
stage('IT 1 (slow)') {
agent { label '!master' }
steps …Run Code Online (Sandbox Code Playgroud) asynchronous ×1
c ×1
datetime ×1
distributed ×1
epoll ×1
extend ×1
inheritance ×1
jenkins ×1
php ×1
php-5.3 ×1