Skip to main content

asynchronous joke

Project description

Как использовать

  1. Установка:

    pip install asyncio_tcp_messages_team_2

  2. Пример сервера:

    В начале объявляем класс MySocketLib с ip и портом. После чего регистрируем функции, которые вам нужны, для регистраций команды нужно указать декоратор @app.command (Если хотите получить адрес клиента, укажите первым аргументом addr с тайп хитом tuple пример def get_addr(addr: tuple))

    import asyncio

    from asyncio_tcp_messages_team_2.main import MySocketLib

    app = MySocketLib('127.0.0.1', 8889)

    ter = {}

    @app.command async def set_data(key: str, val: int): await ter[key] = val

    @app.command async def get_data(key: str): return ter[key]

    asyncio.run(app.run())

  3. Пример клиента:

    import asyncio

    async def tcp_client(): reader, writer = await asyncio.open_connection('127.0.0.1', 8889)

     while True:
         message = input("Send: ") + "\n"
         if not message:
             break
         writer.write(message.encode())
         await writer.drain()
         data = await reader.readline()
         print(data.decode())
     print('Close the connection')
     writer.close()
    

    async def main(): await asyncio.gather(tcp_client())

    if name == 'main': asyncio.run(main())

  4. Пример работы:

    set_data --key key val --val 21 12

    ok get_data --key key --val 21 12

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

asyncio_tcp_messages_team_2-0.1.3.tar.gz (4.2 kB view details)

Uploaded Source

File details

Details for the file asyncio_tcp_messages_team_2-0.1.3.tar.gz.

File metadata

  • Download URL: asyncio_tcp_messages_team_2-0.1.3.tar.gz
  • Upload date:
  • Size: 4.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.1

File hashes

Hashes for asyncio_tcp_messages_team_2-0.1.3.tar.gz
Algorithm Hash digest
SHA256 5bcb2a60192c4704787c4fb5ce5dfd2fef4ba2d6414e2cd4401facb44b99c5a3
MD5 56dbcabfa223edbd17dae6cc16f194db
BLAKE2b-256 7000bb5fc58ded97c479b3b5536004cb983c9cbd9b2c9d613409bfbcec9d4b94

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page