你好 关于问题2, 方便贴一下 dolphindb.cfg 吗? 另外能运行一下 netstat -nlp |grep dolphin 确认一下 dolphindb 是否运行在 8848 端口
附:
如果还有问题,可以添加我的企业微信
最近在学习dolphindb
我在测试最简单的流数据订阅的实现:
我先在GUI运行
share streamTable(1:0,`id`price`qty,[INT,DOUBLE,INT]) as trades
trades.append!(table(1..10 as id,rand(10.0,10) as price,rand(10,10) as qty))
即生成streamTable一个随机表格,在GUI中查看到了数据,确实生成了,然后在python中运行
import dolphindb as ddb
s = ddb.session()
s.enableStreaming(8849)
def handler(lst):
print(lst)
# 订阅DolphinDB(本机8848端口)上的OHLC流数据表
s.subscribe("localhost", 8848, handler, "trades", "sub_trades", 0)
但是出现
getLocalHostName #attempt=1 come across an error: Client: connect() failed!, Will retry in 1 second.
若将上述python代码最后一行的第一个参数由localhost改为127.0.0.1,就不会出现标题中的错误,但是,依然什么都没有打印出来就结束了。
问题1:为什么localhost改为127.0.0.1就不会报getLocalHostName的错误呢?
问题2:为什么什么都没打印出来?
感谢回答!
使用getStreamingStat方法,查看订阅情况,发现cumMsgCount(已经接收到的消息数量)是有数据的,说明确实接受到了数据,但是为什么python运行却什么都没打印呢?