Add member function stop for scheduler

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Add block_guard

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Add spin::function

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Refine

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Remove unused code

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Use a better implementation from public domain

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Add function example

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Add routine.hpp

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Fix function

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Add basic routine test

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Remove opreator bool for routine type

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>
Use routine<> other than std::function<void()>

Signed-off-by: LAN Xingcan <lanxingcan@gmail.com>