Subject | Hash | Author | Date (UTC) |
---|---|---|---|
interface | 8aaad13bc18270477139d6144771cebdba2928d6 | mucbuc | 2020-01-23 05:38:16 |
hook_once | e800fa98f37b99f456e0f474d2a95eac87dbe020 | mucbuc | 2020-01-20 17:22:05 |
twice_size => circuit | 07e34c75c67aa4ccaed56d26357bb29f75914005 | mucbuc | 2020-01-20 12:09:43 |
reset agent and check before callback | 9ce516c3b921eb0e853b17119a4960fdf3936dcf | mucbuc | 2020-01-19 06:57:31 |
include statement | 2c33dfbb947f7aafd05413b78dea3a0c036cf91b | mucbuc | 2020-01-17 10:29:01 |
formating | 99ddddbf993037c4bdc573c149b28db242ac0862 | mucbuc | 2020-01-17 05:30:56 |
invoke_once | b6ee37d690063e31b0300fdef0319d26293f0532 | mucbuc | 2020-01-17 05:29:52 |
remove agent | 31359a9da855067033433f4310d172dadc813f28 | mucbuc | 2020-01-16 12:55:13 |
formati | 13721c73e8d359eab3f32a030a35a42b83a341f0 | mucbuc | 2020-01-16 12:40:00 |
fix tests | 343e081bf929c31592f835b279e5e4cd2c149539 | mucbuc | 2020-01-16 12:37:58 |
strip interface | 991fc85aa55fc6f1d08fe94673840c14f2087ea8 | mucbuc | 2020-01-16 05:44:55 |
*break* circuit poc | 26840f5e3ecca09bc113cb42fff5275c9213e0ae | mucbuc | 2020-01-14 11:32:23 |
add circuit | 0cc2be277c7c0bdd4026e056292cc2d6f4150195 | mucbuc | 2020-01-14 11:30:23 |
formating | d0c058639d2aec3f3e8f94da64e03e316d1c0914 | mucbuc | 2020-01-14 11:04:33 |
documentation | f9e40f305cb18e274187ca4a6d5337d074d1ff30 | mucbuc | 2020-01-12 15:38:09 |
fixed test | ea8fe3cc68d22f66233227333ca7e5e5ba5bf61b | Ubuntu | 2020-01-05 10:03:01 |
fix test | 3000b9771071dad410993acf8a3fca2cae11c47b | Ubuntu | 2019-12-29 14:41:59 |
cleanup/ / /\ \\ | 2318e095c0bc6cbc7831c56c0d60b7895534af37 | mucbuc | 2019-12-25 01:04:28 |
test for dead object removal | 293a4ecb0c1b37e3f6de4c382c544f858e591b5d | Ubuntu | 2019-12-24 12:22:51 |
listener type | 17dbf951b9f1c9d5597eec229bbb1493b7b7f9c0 | Ubuntu | 2019-12-24 11:50:57 |
File | Lines added | Lines deleted |
---|---|---|
README.md | 19 | 5 |
File README.md changed (mode: 100644) (index 9b9214b..64a5f8e) | |||
... | ... | Dispatch work to agents. | |
6 | 6 | ||
7 | 7 | ### Interface: | ### Interface: |
8 | 8 | ``` | ``` |
9 | batch.hook( function ) -> agent | ||
10 | batch.invoke( ... ) | ||
11 | batch.kill( ... ) | ||
12 | batch.kill_invoke( ... ) | ||
13 | batch.is_dead() | ||
9 | namespace om636 { | ||
10 | namespace control { | ||
11 | |||
12 | template <typename... T> | ||
13 | class Batch { | ||
14 | public: | ||
15 | typedef std::function<void(T...)> function_type; | ||
16 | typedef std::shared_ptr<function_type> agent_type; | ||
17 | typedef agent_type listener_type; | ||
18 | |||
19 | virtual ~Batch() = default; | ||
20 | virtual agent_type hook(function_type) = 0; | ||
21 | virtual agent_type hook_once(function_type) = 0; | ||
22 | virtual void invoke(T...) = 0; | ||
23 | }; | ||
24 | |||
25 | } // control | ||
26 | } // om636 | ||
14 | 27 | ``` | ``` |
28 | |||
15 | 29 | ### Dependencies | ### Dependencies |
16 | 30 | ||
17 | 31 | Dynamo uses Circuit for thread syncronization | Dynamo uses Circuit for thread syncronization |