diff options
author | Todd Leonhardt <todd.leonhardt@gmail.com> | 2017-03-04 20:32:36 -0500 |
---|---|---|
committer | Todd Leonhardt <todd.leonhardt@gmail.com> | 2017-03-04 20:32:36 -0500 |
commit | c308ad300adcd78a0f5b644cb2c244a12578e2ef (patch) | |
tree | bf1b680c96892b81bd7475f9d55b39cd1aafed76 | |
parent | 46f4f277d62e4b6e54fb525787474c34894a7481 (diff) | |
download | cmd2-git-c308ad300adcd78a0f5b644cb2c244a12578e2ef.tar.gz |
Added basic example of how to use cmd2 in a manner that doesn't own the main inner loop of an application.
-rwxr-xr-x | examples/event_loops.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/examples/event_loops.py b/examples/event_loops.py new file mode 100755 index 00000000..e3e5880c --- /dev/null +++ b/examples/event_loops.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python +# coding=utf-8 +"""A sample application for integrating cmd2 with external event loops. + +This is an example of how to use cmd2 in a way so that cmd2 doesn't own the inner event loop of your application. + +This opens up the possibility of registering cmd2 input with event loops, like asyncio, without occupying the main loop. +""" +import cmd2 + + +class Cmd2EventBased(cmd2.Cmd): + def __init__(self): + cmd2.Cmd.__init__(self) + + # ... your class code here ... + + +if __name__ == '__main__': + app = Cmd2EventBased() + app.preloop() + + # Do this within whatever event loop mechanism you wish to run a single command + app.onecmd_plus_hooks("help history") + + app.postloop() |