public ulong wsq(string windCodes, string fields, string options, WindCallback wc, bool updateAll = true) { checkConnection(); if (wc == null) { throw new Exception("订阅回调函数不能为空。"); } string tmpoptions = options + ";REALTIME=Y"; int errCode; ulong rid = wdc.wsq(windCodes, fields, tmpoptions, out errCode); WSQReq wr = new WSQReq(); wr.callback = wc; wr.rdata = wsq(windCodes, fields, options); wr.updateAll = updateAll; ReqList.Add(rid, wr); return(rid); }
public ulong RequestData(ref int errCode, List <string> secuCodes, List <string> fields, Dictionary <string, string> options, bool updateAll, WindCallback cb) { string strCodes = string.Join(",", secuCodes); string strFields = string.Join(",", fields); string strOptions = string.Empty; StringBuilder sb = new StringBuilder(); foreach (var kv in options) { sb.AppendFormat("{0}={1};", kv.Key, kv.Value); } if (sb.Length > 0) { sb.Remove(sb.Length - 1, 1); } strOptions = sb.ToString(); if (cb == null) { cb = new WindCallback(Callback); } return(_windAPI.wsq(ref errCode, strCodes, strFields, strOptions, cb, updateAll)); }
public ulong bbq(ref int errCode, string windCodes, string fields, string options, WindCallback wc) { checkConnection(); if (wc == null) { throw new Exception("订阅回调函数不能为空。"); } string tmpoptions = options + ";REALTIME=Y"; ulong rid = wdc.bbq(windCodes, fields, tmpoptions, out errCode); WSQReq wr = new WSQReq(); wr.callback = wc; wr.updateAll = false; lock (ReqList) { ReqList.Add(rid, wr); } return(rid); }
public abstract ulong Subscript(string[] grpcodes, string Fields, string options, WindCallback wc);
public override ulong Subscript(string[] grpcodes, string Fields, string options, WindCallback wc) { int errcode = 0; return(SystemGlobal.w.wsq(ref errcode, string.Join(",", grpcodes), Fields, options, wc, UpdateAll)); }
public ulong wsqtd(string windCodes, string fields, string options, WindCallback wc, bool updateAll = true) { checkConnection(); if (wc == null) { throw new Exception("订阅回调函数不能为空。"); } string tmpoptions = options + ";REALTIME=Y"; int errCode; ulong rid = wdc.wsqtd(windCodes, fields, tmpoptions, out errCode); WSQReq wr = new WSQReq(); wr.callback = wc; wr.rdata = wsqtd(windCodes, fields, options); wr.updateAll = updateAll; ReqList.Add(rid, wr); return rid; }