コード例 #1
0
ファイル: start.py プロジェクト: leisurelyrcxf/cmoult
#import Pymoult
from pymoult.highlevel.listener import Listener
from pymoult.threads import DSU_Thread

#Initialize a simple ftp server
authorizer = DummyAuthorizer()
authorizer.add_anonymous(os.path.abspath("data"))

handler = FTPHandler
handler.authorizer = authorizer
handler.banner = "Bruce"

address = ('127.0.0.1', 2121)
server = FTPServer(address, handler)

server.max_cons = 256
server.max_cons_per_ip = 5

#Start Pymoult Listener
listener = Listener()
listener.start()


def main():
    server.serve_forever(timeout=0.5)


mainThread = DSU_Thread(target=main, name="mainThread")
mainThread.start()
コード例 #2
0
ファイル: application.py プロジェクト: leisurelyrcxf/cmoult
#Testing failed alterability

from pymoult.highlevel.managers import ThreadedManager
from pymoult.threads import DSU_Thread
from pymoult.highlevel.listener import Listener,log
import time
import threading
import sys
  
def func_v1():
    log(0,"v1")

def main():
    for x in range(8):
        time.sleep(1)
        func_v1()


thread = DSU_Thread(target=main,name="app")
thread.start()
manager = ThreadedManager(name="pymoult",threads=[thread])
manager.start()

listener = Listener()
listener.start()

thread.join()
manager.stop()
listener.stop()

コード例 #3
0
#/usr/bin/python-dsu3

from pymoult.threads import DSU_Thread
from pymoult.highlevel.listener import Listener
from pymoult.lowlevel.alterability import staticUpdatePoint
import time

  
def hello():
    print("hello")

def main():
    while True:
        staticUpdatePoint()
        time.sleep(1)
        hello()


thread = DSU_Thread(target=main,name="main")
thread.start()
listener = Listener()
listener.start()
コード例 #4
0
ファイル: server.py プロジェクト: leisurelyrcxf/cmoult
    elif comm.startswith("login "):
        do_login(comm.lstrip("login").strip())
    elif comm.startswith("logout"):
        do_logout(comm.lstrip("logout").strip())
    elif comm.startswith("register "):
        do_register(comm.lstrip("register").strip())


def main_loop():
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.bind((hostname, port))
    s.listen(max_connections)
    while True:
        #This is a safe point for updating
        staticUpdatePoint()
        conn, addr = s.accept()
        data = conn.recv(max_data_length)
        do_command(data.decode("ascii"))
        data = ""
        conn.close()


if __name__ == "__main__":
    listener = Listener()
    listener.start()
    main_thread = DSU_Thread(name="main thread", target=main_loop)
    print("Starting server")
    main_thread.start()
    manager = ThreadedManager(threads=[main_thread])
    manager.start()
コード例 #5
0
ファイル: application.py プロジェクト: leisurelyrcxf/cmoult
from pymoult.highlevel.managers import ThreadedManager
from pymoult.highlevel.listener import Listener
from pymoult.lowlevel.alterability import staticUpdatePoint
from pymoult.threads import DSU_Thread
import time


def tic():
    print("tic")


def tac():
    print("tac")


def main():
    while True:
        staticUpdatePoint()
        time.sleep(1)
        tic()
        time.sleep(1)
        tac()


manager = ThreadedManager(name='Manager')
manager.start()
listener = Listener()
listener.start()
thread = DSU_Thread(target=main)
thread.start()
コード例 #6
0
ファイル: app_solution.py プロジェクト: leisurelyrcxf/cmoult
        #Create a http server listening on localhost port 8080
        #The server will use the self.Handler class to handle the clients requests
        httpd = HTTPServer(("", 8080), self.Handler)
        while True:
            staticUpdatePoint()
            httpd.handle_request()


def main():
    p1 = Page("banana", "Banana!",
              "A nice fruit. Allways bring one to parties")
    p2 = Page("coconut", "Coconut", "A fine coconut")
    p3 = Page("hello", "Hello World!", "Hello!")
    pages = [p1, p2, p3]
    ws = WebServer(pages)
    ws.run()


#Listener
listener = Listener()
listener.start()

#Setup the main thread
main_thread = DSU_Thread(target=main)

#Eager update manager for the Page class
manager = ThreadedManager(name="global manager", threads=[main_thread])
manager.start()

main_thread.start()