问题标签 [otl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
123 浏览

oracle-call-interface - OTL - 如何控制 SELECT 中的数值类型

在 C++ / Oracle OTL 应用程序中,我有

这是 otl_stream selstream 的基础 在这一行中,我在一个不起眼的平台上得到一个转换异常(在其他平台上运行良好) selstream >> myint;
异常必须与OTL端的MYINT类型有关。

如何在 OTL 中控制它?我想我应该能够做类似的事情:

但 SQL 失败。

或类似的东西:

(在其他平台上工作时尝试了不同的形式,仍然例外)

0 投票
1 回答
1216 浏览

c++ - 使用OTL库从c ++程序将数据插入mysql表

我想从 C++ 程序插入intstring值到 mysql 表中。

我想插入hit->first*vit

  1. 我在这里看到了示例:mysql 的 OTL 示例。它对我有用吗?

    以及如何在我的系统中设置 OTL 环境?我需要安装它还是什么?

  2. 这是另一种非常简单的示例。但它直接include <mysql.h>在我的系统中找不到。它使用什么环境?

我正在使用 Linux - Ubuntu 环境。

0 投票
0 回答
482 浏览

c++ - 如何在 Linux 中设置 ODBC 环境

当 unixODBC(odbc.ini 和 odbcinst.in)文件位于 /usr/local/etc/ 下时。我的应用程序运行良好。

我从 /usr/local/etc/ 中删除了 unixODBC 文件,并在 home/$USER 目录下复制了 .odbc.ini 和 .odbcinst.ini 文件。我已经为 .odbc.ini 文件完成了环境变量设置。但是在使用 OTL 库连接到数据库时,出现以下错误

谢谢你的帮助

0 投票
1 回答
66 浏览

linux - unixODBC 可以处理的最佳进程数是多少?

我的应用程序曾经从大文件的不同部分读取数据并更新表。数据的每个部分都与一个单独的表相关联。更新过程可以包含多个插入、更新和删除语句。

我正在尝试将文件拆分为多个文件并运行应用程序的 3、4 或 n 个实例以实现并行执行。我希望这将提高性能。

问题:

  1. unixODBC 可以并行处理的最大(最佳)允许进程是多少?

环境:Red hat Linux 64位、C++、unixODBC(32位)、OTL、Oracle 10,11

0 投票
1 回答
2324 浏览

visual-c++ - OTL library - SQL Server - C++ - Performance

I have recently started testing the OTL library with the SQL Server using the Visual Studio 2013. My tests demonstrated that the performance of simple select statements against a 10000 count table is 40% slower than the performance of a similar .NET 4.0 test application. All tests were performed with all optimizations turned on for both platforms.

Both apps perform the following tasks: Open the db connection Create (and reserve space) for the container object. Execute the select statement command. For each record fetched from db create an entity using the db(stream/reader) object add the object to container close

.NET C# app requires 0.5 secs to complete this task, while OTL-C++ app takes 0.7 secs to complete and I wonder if it is possible to optimize the C++ app to perform faster?

Snippet of C++ code:

0 投票
1 回答
3135 浏览

c++ - 无法配置 odbc

我以前从未使用过 ODBC。我一直都是手动连接。现在我正在尝试使用 OTL,但我无法配置它。

我发现由于某种原因它没有读取我在 /etc/odbc* 中的文件

它正在从我的主管那里读取这些文件 (.odbc.ini .odbinst.ini)

~/.odbc.ini:

~/.odbcinst.ini:

这就是我尝试连接时发生的情况

[unixODBC][驱动管理器]找不到数据源名称,也没有指定默认驱动

0 投票
0 回答
818 浏览

multithreading - 多线程期间 Delphi CPU 使用率低

在执行多线程程序期间,我看到 Delphi 事件日志中启动了 8 个线程。

(我的 CPU 是 Intel 7,具有 4 个超线程内核,因此 8 个计算内核)但在我的 TaskManager 中的性能选项卡中,我看到只有 12% 的 CPU 使用率,并且只有一个内核计算性能高达 70-80%。使用 OTL 和 ParallelFor 编译了我的多线程程序,但仍然只有 12% 的性能并且只有一个内核在做这项工作。

在我的 Form1 上,我有一个带有 OTL parallel.ForeEach 的 ButtonClick 过程,它迭代了一个 StingList 的项目。StringList 行包含每个名称、不同数据文件的路径和文件的数据格式。ForEach.execute() 在其他单元上启动一个“EntrySearch”过程,EntrySearch 过程从从字符串列表的适当行中提取信息开始。在“While X < Y 循环”中,是通过 AssignFile 从 DataFile 中提取的数据,而 While not eof,则读取带有数据的行。对数据进行计算,直到“当 X < Y”循环结束

我可以看到在 ButtonClick 过程中启动了 8 个(CPUcount)线程。在 TaskManager 中,我看到只有一个 CPU 内核开始工作,总共大约 12% 的处理器使用率。当计算后 ProcessorUsage 返回 0% 时,.exe 程序挂起,我无法控制该程序。从我可以从 CalculationUnit 中提取的少量数据中,我只从最后一个启动的线程中获取数据,因为最后一个线程使其他线程停止并且无法进行计算并且无法终止。

出了什么问题?我该如何解决这个问题。多谢。

0 投票
1 回答
117 浏览

multithreading - 在 MainForm 关闭 OTL 线程不关闭

当 OTL 踏板仍在使用 IOmniCancellationToken 时关闭 MainForm 不会终止线程。使用以下任务配置代码

私人取消令牌:IOmniCancellationToken;

Form.CloseCancelToken.Signal ;使窗体关闭,线程从“Parallel.ForEach worker”变为“idle Thread worker”,但线程不会终止。程序挂起。为什么线程不终止?我做错了什么?

0 投票
0 回答
29 浏览

otl - 如何在 Timecard Review 页面上警告用户,OTL?

用户在考勤卡页面上输入时间并点击“继续”按钮。在评论页面上,他没有“提交”或“返回”或“取消”。但点击其他链接,如“主页”或“首选项”等。

要求是在用户未保存考勤卡但导航离开页面时,在考勤卡查看页面上向用户提供警告消息。怎么做?

0 投票
2 回答
980 浏览

multithreading - Delphi - OTL - 线程池和工作线程之间的通信

我正在使用 XE8,并且正在尝试构建我的真实世界应用程序的示例。

我需要在主“服务线程”和 OTL 线程池之间进行通信。这些示例都设置了表单和监视器。我不需要这些,但我想不出一种方法来编写干净的代码。到目前为止,这就是我所做的:

实现为:

在主线程中,为了创建池,我调用:

我不知道如何正确调用我的工作线程。在我的实际应用程序中,将触发多个线程,我需要确保我正确使用了线程池。

1)通过像我一样调用CreateTask,我如何正确使用线程池?为我需要的每个进程调用 CreateTask 对我来说似乎很奇怪。

2)工作线程永远不会被触发。我应该如何让我的 Worker 线程工作!:)

问候,克莱门特