小编Vla*_*nko的帖子

流程图与UML活动图

使用流程图和UML活动图有什么实际区别?我有一些想法,但也许我在房间里想念一头大象?

流程图:

  1. 广泛使用;
  2. 非程序员容易理解;
  3. 旧?

UML活动图:

  1. 规范;
  2. 支持并发;
  3. 鲜为人知的语法,但仍然很简单.

对于我特定记录特定应用程序逻辑块的情况,我决定使用流程图.公司中的更多人将能够理解他们.

uml workflow-activity flowchart

41
推荐指数
3
解决办法
5万
查看次数

取消后调用boost :: asio异步处理程序而没有错误

我的代码在单个线程中使用boost :: asio和io_service来执行各种套接字操作.所有操作都是异步的,每个处理程序都依赖于boost::system::error_code(特别boost::asio::error::operation_aborted)确定操作的结果.

在我改变逻辑以进行多个并发连接并选择最快的连接之前,它一直运行良好.也就是说,当第一个async_read_some处理程序触发时,我取消其他套接字(shutdown,close - everything)并继续当前的套接字.在95%的情况下,使用operation_aborted错误调用其他套接字的读取处理程序.但有时,这些读取处理程序被调用而没有错误,告诉我它们已成功接收N个字节.

但socket :: cancel()的文档说明:

此函数会导致所有未完成的异步连接,发送和接收操作立即完成,并且已取消操作的处理程序将传递boost::asio::error::operation_aborted错误.

所以,问题:我真的可以依赖operation_aborted生产代码中的错误吗?如果可以的话,它是来自增强1.46.1的Asio中的一个错误吗?如果我不能,是否有关于此的官方文件?

c++ windows handler asyncsocket boost-asio

5
推荐指数
1
解决办法
3795
查看次数

Hudson/jenkins:禁用失败的构建

失败时禁用定期构建的首选方法是什么?快速搜索发现,有一个前提条件构建步骤插件,但失败的构建,我需要构建是直到人工干预完全禁用.

谢谢.

hudson jenkins

4
推荐指数
1
解决办法
5368
查看次数

Jenkins:更新SCM而不触发构建?

我们有一个SCM控制的项目,每隔几分钟轮询一次回购.总体而言,工作流程很棒,但偶尔我需要将新的更改推送到服务器的存储库,而不会触发Jenkins中的构建(出于各种原因:长构建,次要更改,并发提交等).

我已经设置了一个安静的时期,有时我只是启动和停止构建(这很尴尬),因此Jenkins提取更改并且不会在以后触发构建.

那么,是否有任何类型的插件允许:

  • 手动取消未来的构建(在SCM轮询器触发之前)
  • 手动更新项目的SCM仓库而不触发构建?

continuous-integration hudson build jenkins

3
推荐指数
1
解决办法
5498
查看次数