Skip to content

Commit 422dc9a

Browse files
release300.1.1
1 parent d596e72 commit 422dc9a

11 files changed

+293
-81
lines changed

.gitignore

+20-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,22 @@
11
.idea
22
cmake-build-debug
3-
cmake-build-release
3+
project
4+
cmake-build-debug-coverage
5+
makefile
6+
Makefile
7+
libDolphinDBAPI.so
8+
copytest
9+
/vs
10+
.vscode/
11+
.clangd/
12+
.cache
13+
build/
14+
CMakeFiles/
15+
test/*example*.*
16+
obj/
17+
*.dll
18+
test/*.dos
19+
libtest/
20+
report/coverage/*
21+
bin/*
22+
__pycache__

README_CN.md

+55-59
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,60 @@
1-
>注意:自 1.30.22.1 版本起,该 Readme 不再进行维护。用户可移步至[新 C++ API 手册](https://docs.dolphindb.cn/zh/api/cpp/cpp_api.html)
2-
31
本教程主要介绍以下内容:
42

5-
- [DolphinDB C++ API](#dolphindb-c-api)
6-
- [1. 项目编译](#1-项目编译)
7-
- [1.1 在Linux环境下编译项目](#11-在linux环境下编译项目)
8-
- [1.1.1 环境配置](#111-环境配置)
9-
- [1.1.2 下载bin文件和头文件](#112-下载bin文件和头文件)
10-
- [1.1.3 编译main.cpp](#113-编译maincpp)
11-
- [1.1.4 编译](#114-编译)
12-
- [1.1.5 运行](#115-运行)
13-
- [1.2 Windows环境下编译](#12-windows环境下编译)
14-
- [1.2.1 环境配置](#121-环境配置)
15-
- [1.2.2 下载bin文件和头文件](#122-下载bin文件和头文件)
16-
- [1.2.3 创建Visual Studio项目](#123-创建visual-studio项目)
17-
- [1.2.4 编译和运行](#124-编译和运行)
18-
- [2. 建立DolphinDB连接](#2-建立dolphindb连接)
19-
- [3. 运行DolphinDB脚本](#3-运行dolphindb脚本)
20-
- [4. 运行DolphinDB函数](#4-运行dolphindb函数)
21-
- [5. 上传数据对象](#5-上传数据对象)
22-
- [6. 读取数据示例](#6-读取数据示例)
23-
- [6.1 向量](#61-向量)
24-
- [6.2 集合](#62-集合)
25-
- [6.3 矩阵](#63-矩阵)
26-
- [6.4 字典](#64-字典)
27-
- [6.5 表](#65-表)
28-
- [6.5.1 `getString()`方法获取表的内容](#651-getstring方法获取表的内容)
29-
- [6.5.2 `getColumn()`方法按列获取表的内容](#652-getcolumn方法按列获取表的内容)
30-
- [6.5.3 `getRow()`方法按照行获取表的内容](#653-getrow方法按照行获取表的内容)
31-
- [6.5.4 使用`BlockReaderSP`对象分段读取表数据](#654-使用blockreadersp对象分段读取表数据)
32-
- [6.6 AnyVector](#66-anyvector)
33-
- [7. 保存数据到DolphinDB数据表](#7-保存数据到dolphindb数据表)
34-
- [7.1 保存数据到DolphinDB内存表](#71-保存数据到dolphindb内存表)
35-
- [7.1.1 使用insert into语句保存数据](#711-使用insert-into语句保存数据)
36-
- [7.1.2 使用tableInsert函数批量保存多条数据](#712-使用tableinsert函数批量保存多条数据)
37-
- [7.1.3 使用tableInsert函数保存TableSP对象](#713-使用tableinsert函数保存tablesp对象)
38-
- [7.2 保存数据到本地磁盘表](#72-保存数据到本地磁盘表)
39-
- [7.3 保存数据到分布式表](#73-保存数据到分布式表)
40-
- [7.3.1 使用tableInsert函数保存TableSP对象](#731-使用tableinsert函数保存tablesp对象)
41-
- [7.3.2 分布式表的并发写入](#732-分布式表的并发写入)
42-
- [8. 注意事项](#8-注意事项)
43-
- [C++ Streaming API](#c-streaming-api)
44-
- [9 编译](#9-编译)
45-
- [9.1 Linux 64位](#91-linux-64位)
46-
- [9.1.1 通过cmake](#911-通过cmake)
47-
- [10 在Windows中使用MinGW编译](#10-在windows中使用mingw编译)
48-
- [11. API](#11-api)
49-
- [11.1 ThreadedClient](#111-threadedclient)
50-
- [11.1.1 定义线程客户端](#1111-定义线程客户端)
51-
- [11.1.2 调用订阅函数](#1112-调用订阅函数)
52-
- [11.1.3 取消订阅](#1113-取消订阅)
53-
- [11.2 ThreadPooledClient](#112-threadpooledclient)
54-
- [11.2.1 定义多线程客户端](#1121-定义多线程客户端)
55-
- [11.2.2 调用订阅函数](#1122-调用订阅函数)
56-
- [11.2.3 取消订阅](#1123-取消订阅)
57-
- [11.3 PollingClient](#113-pollingclient)
58-
- [11.3.1 定义客户端](#1131-定义客户端)
59-
- [11.3.2 订阅](#1132-订阅)
60-
- [11.3.3 取消订阅](#1133-取消订阅)
61-
3+
[DolphinDB C++ API](https://2xdb.net/dolphindb/api-cplusplus#dolphindb-c-api)
4+
- [1. 项目编译](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1-%E9%A1%B9%E7%9B%AE%E7%BC%96%E8%AF%91)
5+
- [1.1 在Linux环境下编译项目](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#11-%E5%9C%A8linux%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%BC%96%E8%AF%91%E9%A1%B9%E7%9B%AE)
6+
- [1.1.1 环境配置](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#111-%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE)
7+
- [1.1.2 下载bin文件和头文件](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#112-%E4%B8%8B%E8%BD%BDbin%E6%96%87%E4%BB%B6%E5%92%8C%E5%A4%B4%E6%96%87%E4%BB%B6)
8+
- [1.1.3 编译main.cpp](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#113-%E7%BC%96%E8%AF%91maincpp)
9+
- [1.1.4 编译](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#114-%E7%BC%96%E8%AF%91)
10+
- [1.1.5 运行](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#115-%E8%BF%90%E8%A1%8C)
11+
- [1.2 Windows环境下编译](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#12-windows%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%BC%96%E8%AF%91)
12+
- [1.2.1 环境配置](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#121-%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE)
13+
- [1.2.2 下载bin文件和头文件](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#122-%E4%B8%8B%E8%BD%BDbin%E6%96%87%E4%BB%B6%E5%92%8C%E5%A4%B4%E6%96%87%E4%BB%B6)
14+
- [1.2.3 创建Visual Studio项目](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#123-%E5%88%9B%E5%BB%BAvisual-studio%E9%A1%B9%E7%9B%AE)
15+
- [1.2.4 编译和运行](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#124-%E7%BC%96%E8%AF%91%E5%92%8C%E8%BF%90%E8%A1%8C)
16+
- [2. 建立DolphinDB连接](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#2-%E5%BB%BA%E7%AB%8Bdolphindb%E8%BF%9E%E6%8E%A5)
17+
- [3. 运行DolphinDB脚本](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#3-%E8%BF%90%E8%A1%8Cdolphindb%E8%84%9A%E6%9C%AC)
18+
- [4. 运行DolphinDB函数](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#4-%E8%BF%90%E8%A1%8Cdolphindb%E5%87%BD%E6%95%B0)
19+
- [5. 上传数据对象](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#5-%E4%B8%8A%E4%BC%A0%E6%95%B0%E6%8D%AE%E5%AF%B9%E8%B1%A1)
20+
- [6. 读取数据示例](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#6-%E8%AF%BB%E5%8F%96%E6%95%B0%E6%8D%AE%E7%A4%BA%E4%BE%8B)
21+
- [6.1 向量](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#61-%E5%90%91%E9%87%8F)
22+
- [6.2 集合](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#62-%E9%9B%86%E5%90%88)
23+
- [6.3 矩阵](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#63-%E7%9F%A9%E9%98%B5)
24+
- [6.4 字典](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#64-%E5%AD%97%E5%85%B8)
25+
- [6.5 表](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#65-%E8%A1%A8)
26+
- [6.5.1 getString()方法获取表的内容](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#651-getstring%E6%96%B9%E6%B3%95%E8%8E%B7%E5%8F%96%E8%A1%A8%E7%9A%84%E5%86%85%E5%AE%B9)
27+
- [6.5.2 getColumn()方法按列获取表的内容](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#652-getcolumn%E6%96%B9%E6%B3%95%E6%8C%89%E5%88%97%E8%8E%B7%E5%8F%96%E8%A1%A8%E7%9A%84%E5%86%85%E5%AE%B9)
28+
- [6.5.3 getRow()方法按照行获取表的内容](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#653-getrow%E6%96%B9%E6%B3%95%E6%8C%89%E7%85%A7%E8%A1%8C%E8%8E%B7%E5%8F%96%E8%A1%A8%E7%9A%84%E5%86%85%E5%AE%B9)
29+
- [6.6 AnyVector](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#66-anyvector)
30+
- [7. 保存数据到DolphinDB数据表](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#7-%E4%BF%9D%E5%AD%98%E6%95%B0%E6%8D%AE%E5%88%B0dolphindb%E6%95%B0%E6%8D%AE%E8%A1%A8)
31+
- [7.1 保存数据到DolphinDB内存表](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#71-%E4%BF%9D%E5%AD%98%E6%95%B0%E6%8D%AE%E5%88%B0dolphindb%E5%86%85%E5%AD%98%E8%A1%A8)
32+
- [7.1.1 使用insert into语句保存数据](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#711-%E4%BD%BF%E7%94%A8insert-into%E8%AF%AD%E5%8F%A5%E4%BF%9D%E5%AD%98%E6%95%B0%E6%8D%AE)
33+
- [7.1.2 使用tableInsert函数批量保存多条数据](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#712-%E4%BD%BF%E7%94%A8tableinsert%E5%87%BD%E6%95%B0%E6%89%B9%E9%87%8F%E4%BF%9D%E5%AD%98%E5%A4%9A%E6%9D%A1%E6%95%B0%E6%8D%AE)
34+
- [7.1.3 使用tableInsert函数保存TableSP对象](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#713-%E4%BD%BF%E7%94%A8tableinsert%E5%87%BD%E6%95%B0%E4%BF%9D%E5%AD%98tablesp%E5%AF%B9%E8%B1%A1)
35+
- [7.2 保存数据到本地磁盘表](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#72-%E4%BF%9D%E5%AD%98%E6%95%B0%E6%8D%AE%E5%88%B0%E6%9C%AC%E5%9C%B0%E7%A3%81%E7%9B%98%E8%A1%A8)
36+
- [7.3 保存数据到分布式表](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#73-%E4%BF%9D%E5%AD%98%E6%95%B0%E6%8D%AE%E5%88%B0%E5%88%86%E5%B8%83%E5%BC%8F%E8%A1%A8)
37+
- [7.3.1 使用tableInsert函数保存TableSP对象](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#731-%E4%BD%BF%E7%94%A8tableinsert%E5%87%BD%E6%95%B0%E4%BF%9D%E5%AD%98tablesp%E5%AF%B9%E8%B1%A1)
38+
- [7.3.2 分布式表的并发写入](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#732-%E5%88%86%E5%B8%83%E5%BC%8F%E8%A1%A8%E7%9A%84%E5%B9%B6%E5%8F%91%E5%86%99%E5%85%A5)
39+
- [8. 注意事项](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#8-%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9)
40+
[C++ Streaming API](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#c-streaming-api)
41+
- [9. 编译](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#9-%E7%BC%96%E8%AF%91)
42+
- [9.1 Linux 64位](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#91-linux-64%E4%BD%8D)
43+
- [9.1.1 通过cmake](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#911-%E9%80%9A%E8%BF%87cmake)
44+
- [10. 在Windows中使用MinGW编译](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#10-%E5%9C%A8windows%E4%B8%AD%E4%BD%BF%E7%94%A8mingw%E7%BC%96%E8%AF%91)
45+
- [11. Streaming](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#11-api)
46+
- [11.1 ThreadedClient](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#111-threadedclient)
47+
- [11.1.1 定义线程客户端](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1111-%E5%AE%9A%E4%B9%89%E7%BA%BF%E7%A8%8B%E5%AE%A2%E6%88%B7%E7%AB%AF)
48+
- [11.1.2 调用订阅函数](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1112-%E8%B0%83%E7%94%A8%E8%AE%A2%E9%98%85%E5%87%BD%E6%95%B0)
49+
- [11.1.3 取消订阅](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1123-%E5%8F%96%E6%B6%88%E8%AE%A2%E9%98%85)
50+
- [11.2 ThreadPooledClient](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#112-threadpooledclient)
51+
- [11.2.1 定义多线程客户端](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1121-%E5%AE%9A%E4%B9%89%E5%A4%9A%E7%BA%BF%E7%A8%8B%E5%AE%A2%E6%88%B7%E7%AB%AF)
52+
- [11.2.2 调用订阅函数](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1122-%E8%B0%83%E7%94%A8%E8%AE%A2%E9%98%85%E5%87%BD%E6%95%B0)
53+
- [11.2.3 取消订阅](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1123-%E5%8F%96%E6%B6%88%E8%AE%A2%E9%98%85)
54+
- [11.3 PollingClient](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#113-pollingclient)
55+
- [11.3.1 定义客户端](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1131-%E5%AE%9A%E4%B9%89%E5%AE%A2%E6%88%B7%E7%AB%AF)
56+
- [11.3.2 订阅](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1132-%E8%AE%A2%E9%98%85)
57+
- [11.3.3 取消订阅](https://2xdb.net/dolphindb/api-cplusplus/-/blob/master/README_CN.md#1133-%E5%8F%96%E6%B6%88%E8%AE%A2%E9%98%85)
6258

6359
# DolphinDB C++ API
6460

include/DBConnectionPoolImpl.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,12 @@ class DBConnectionPoolImpl{
3232
work->join();
3333
}
3434
}
35-
void run(const std::string& script, int identity, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false){
35+
void run(const std::string& script, int identity, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false){
3636
queue_->push(Task(script, identity, priority, parallelism, clearMemory));
3737
taskStatus_.setResult(identity, TaskStatusMgmt::Result());
3838
}
3939

40-
void run(const std::string& functionName, const std::vector<ConstantSP>& args, int identity, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false){
40+
void run(const std::string& functionName, const std::vector<ConstantSP>& args, int identity, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false){
4141
queue_->push(Task(functionName, args, identity, priority, parallelism, clearMemory));
4242
taskStatus_.setResult(identity, TaskStatusMgmt::Result());
4343
}

include/DolphinDB.h

+4-4
Original file line numberDiff line numberDiff line change
@@ -74,14 +74,14 @@ class EXPORT_DECL DBConnection {
7474
* the function returns a void object. If error is raised on the server, the function throws an
7575
* exception.
7676
*/
77-
ConstantSP run(const std::string& script, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false);
77+
ConstantSP run(const std::string& script, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false);
7878

7979
/**
8080
* Run the given function on the DolphinDB server using the local objects as the arguments
8181
* for the function and return the result to the client. If nothing returns, the function
8282
* returns a void object. If error is raised on the server, the function throws an exception.
8383
*/
84-
ConstantSP run(const std::string& funcName, std::vector<ConstantSP>& args, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false);
84+
ConstantSP run(const std::string& funcName, std::vector<ConstantSP>& args, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false);
8585

8686
/**
8787
* upload a local object to the DolphinDB server and assign the given name in the session.
@@ -188,9 +188,9 @@ class EXPORT_DECL DBConnectionPool{
188188
DBConnectionPool(const std::string& hostName, int port, int threadNum = 10, const std::string& userId = "", const std::string& password = "",
189189
bool loadBalance = false, bool highAvailability = false, bool compress = false, bool reConnect = false, bool python = false);
190190
virtual ~DBConnectionPool();
191-
void run(const std::string& script, int identity, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false);
191+
void run(const std::string& script, int identity, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false);
192192

193-
void run(const std::string& functionName, const std::vector<ConstantSP>& args, int identity, int priority=4, int parallelism=2, int fetchSize=0, bool clearMemory = false);
193+
void run(const std::string& functionName, const std::vector<ConstantSP>& args, int identity, int priority=4, int parallelism=64, int fetchSize=0, bool clearMemory = false);
194194

195195
bool isFinished(int identity);
196196

include/DolphinDBImp.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ class DBConnectionImpl {
2323
~DBConnectionImpl();
2424
bool connect(const std::string& hostName, int port, const std::string& userId = "", const std::string& password = "",bool sslEnable = false, bool asynTask = false, int keepAliveTime = -1, bool compress= false, bool python = false);
2525
void login(const std::string& userId, const std::string& password, bool enableEncryption);
26-
ConstantSP run(const std::string& script, int priority = 4, int parallelism = 2, int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
27-
ConstantSP run(const std::string& funcName, std::vector<ConstantSP>& args, int priority = 4, int parallelism = 2, int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
26+
ConstantSP run(const std::string& script, int priority = 4, int parallelism = 64, int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
27+
ConstantSP run(const std::string& funcName, std::vector<ConstantSP>& args, int priority = 4, int parallelism = 64, int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
2828
ConstantSP upload(const std::string& name, const ConstantSP& obj);
2929
ConstantSP upload(std::vector<std::string>& names, std::vector<ConstantSP>& objs);
3030
void close();
@@ -34,7 +34,7 @@ class DBConnectionImpl {
3434
DataInputStreamSP getDataInputStream(){return inputStream_;}
3535
private:
3636
long generateRequestFlag(bool clearSessionMemory = false, bool disablepickle = false, bool pickleTableToList = false);
37-
ConstantSP run(const std::string& script, const std::string& scriptType, std::vector<ConstantSP>& args, int priority = 4, int parallelism = 2,int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
37+
ConstantSP run(const std::string& script, const std::string& scriptType, std::vector<ConstantSP>& args, int priority = 4, int parallelism = 64,int fetchSize = 0, bool clearMemory = false, long seqNum = 0);
3838
bool connect();
3939
void login();
4040

0 commit comments

Comments
 (0)