Skip to content

ThreadedWebsocketManager instance calls start_kline_futures_socket() from another thread and does not print kline data #1543

Open
@tonytao0

Description

@tonytao0

test.py:

from binance import ThreadedWebsocketManager

import time
import threading

twm: ThreadedWebsocketManager
symbol = "BTCUSDT"

def handle_socket_message(msg):
    print('handle_socket_message',msg)

def test_threaded_socket_manager():
    global twm
    print('test_threaded_socket_manager run')
    print('id:',id(twm))
    print('type:',type(twm))

    sock_id = twm.start_kline_futures_socket(callback=handle_socket_message, symbol=symbol)
    time.sleep(10)
    twm.stop_socket(sock_id)

    print('test_threaded_socket_manager stop')

if __name__ == '__main__':
    twm = ThreadedWebsocketManager(api_key="", api_secret="", testnet=False)
    twm.start()
    print('id:',id(twm))
    print('type:',type(twm))

    t = threading.Thread(target=test_threaded_socket_manager)
    t.start()
    t.join()
 
    twm.stop()
    print('quit')

run and print:

  id: 139899228454864
  type: <class 'binance.ws.streams.ThreadedWebsocketManager'>
  test_threaded_socket_manager run
  id: 139899228454864
  type: <class 'binance.ws.streams.ThreadedWebsocketManager'>
  test_threaded_socket_manager stop
  quit

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions