小编Joh*_*n S的帖子

sqlite"行值误用"错误

我从sqlite3查询中收到错误,我找不到任何参考资料.谷歌搜索字符串带我深入sqlite代码本身,这是不透明的我不能做它的正面或反面.

表架构:

CREATE TABLE quote (
    seqnum INTEGER,
    session STRING,
    timestamp_sip INTEGER,
    timestamp_1 INTEGER,
    market_center STRING,
    symbol STRING,
    bid_price INTEGER,
    bid_lots INTEGER,
    offer_price INTEGER,
    offer_lots INTEGER,
    flags INTEGER,
    PRIMARY KEY (symbol, seqnum) );
Run Code Online (Sandbox Code Playgroud)

查询:

select (seqnum, session, timestamp_sip, timestamp_1, market_center, symbol)
    from quote
    where symbol = 'QQQ';
Run Code Online (Sandbox Code Playgroud)

错误:

错误:行值被误用

我不知道如何继续这里.表中有大量数据可以与查询匹配:

sqlite> select count(*) from quote where symbol = 'QQQ';
2675931
Run Code Online (Sandbox Code Playgroud)

任何人都可以提供任何指导吗?Sqlite版本是3.16.2.

sqlite

25
推荐指数
1
解决办法
1万
查看次数

使用std :: chrono时间值的boost :: asio :: deadline_timer

我有一个使用asio截止时间计时器的应用程序.应用程序的其余部分使用std::chrono构造作为其时间值,并且boost::posix_time仅用于触及asio的东西感觉很尴尬.std::chrono如果可以的话,我想在整个应用程序中使用,以保持一致性,可读性等.

在我看来,答案将涉及使用计时器的模板:

typedef boost::asio::basic_deadline_timer<std::chrono::system_clock::time_point>
    my_deadline_timer_type;
 my_deadline_timer_type a_timer(io_service); 
Run Code Online (Sandbox Code Playgroud)

除了在编译时严重爆炸......许多错误行,其中大部分与此类似:

/opt/arm/include/boost/asio/deadline_timer_service.hpp:51:43:错误:无效使用不完整类型'boost :: asio :: deadline_timer_service >>,boost :: asio :: time_traits >>>> :: traits_type {aka struct boost :: asio :: time_traits> >>}'

所以,看起来我可能需要创建一个新的traits_type并声明deadline_timer_service使用它,但我不确定如何/在哪里.我不得不相信这个问题已经解决了.我在linux上使用g ++ 4.7.3和-std = c ++ 11,交叉编译到arm.

c++ boost-asio

15
推荐指数
1
解决办法
6735
查看次数

std :: vector构造函数中的bad_alloc

std::vector有一个构造函数,其中传递一个参数size_type count应该使用count默认构造的元素调整向量的大小.但是以下代码bad_alloc在转换错误后失败并出现异常:

#include <vector>

struct Inner {
  int foo;
  char buf[256];
};

template <typename Type>
struct Outer
{
  typedef std::vector<Inner> BufContainer;
  typedef typename BufContainer::size_type BufIndex;
  BufContainer bufs1;
  BufContainer bufs2;
  const BufIndex BUFCOUNT = 32;

  Outer() :
    bufs1(32),       // fine
    bufs2(BUFCOUNT)  // bad_alloc
  { }
};

int main() {
  Outer<int> outer;
}
Run Code Online (Sandbox Code Playgroud)

当我查看调试器时,我可以看到第二个向量构造函数发生了错误的转换:

#13 0x0000000000400bf1 in Outer<int>::Outer (this=0x7ffdc59570c0) at wtf.cc:22
22          bufs2(BUFCOUNT)
(gdb) down
#12 0x0000000000400d6e in std::vector<Inner, std::allocator<Inner> >::vector     (this=0x7ffdc59570d8, __n=140727918359008, __a=...) at …
Run Code Online (Sandbox Code Playgroud)

c++ stl vector

13
推荐指数
1
解决办法
1068
查看次数

glibc 应用程序保留未使用的内存直到退出之前

我有一个在 Linux(Centos 7)上运行的 C++ 应用程序(gcc 4.9.1,glibc 2.17)。它使用各种第三方库,尤其是 Boost 1.61。当应用程序运行时,我可以通过htop'sVIRTRES列,或ps命令等观察它的内存使用量稳步增加。如果我让它运行足够长的时间,它将使用大量的内存并淹没盒子。

听起来像是泄漏,但它通过valgrind时只泄漏了几个字节,所有这些都在我期望的地方。调试打印消息表明程序流程符合预期。

通过调试器进一步挖掘,我发现__run_exit_handlersmain. 我可以逐步执行各种调用,free因为它通过全局析构函数链工作。完成这些之后,我只观察到明显内存使用量的最小向下变化。然后,最后它调用_exit(),然后才立即将内存恢复到操作系统。

任何人都可以向我提供有关如何进行调试的其他提示吗?为什么我的程序不还给那个内存?

c++ linux memory-leaks glibc

6
推荐指数
1
解决办法
2292
查看次数

通过图表API的新闻Feed与我在facebook.com上看到的非常不同

我正在尝试使用Graph API,特别是News Feed查询(me/home).马上,我可以看到返回的JSON与我在自己的Facebook页面上看到的不一致.API返回一些不在页面上的对象,反之亦然.我无法弄清楚这里发生了什么.我不认为这是关于我取消订阅的人或类似的人.

这是预期的行为,还是我做错了什么?是否有文件说明了区别是什么?

编辑11月22日至11日:这是永远无法回答的,是吗?

facebook news-feed facebook-graph-api

5
推荐指数
1
解决办法
366
查看次数

我需要std :: atomic <bool>还是POD bool足够好?

考虑以下代码:

// global
std::atomic<bool> run = true;

// thread 1
while (run) { /* do stuff */ }

// thread 2
/* do stuff until it's time to shut down */
run = false;
Run Code Online (Sandbox Code Playgroud)

我是否需要与原子变量相关的开销?我的直觉是,布尔变量的读/写无论如何都或多或少是原子的(这是常见的g ++/Linux/Intel设置)并且如果有一些写/读时序的怪异,并且我在线程1上的运行循环停止一个结果提前或结束,我对这个应用程序并不十分担心.

或者我在这里缺少一些其他考虑因素?看看perf,看来我的代码花费了相当多的时间,std::atomic_bool::operator bool而我宁愿把它放在循环中.

c++ multithreading atomic c++11 stdatomic

5
推荐指数
1
解决办法
778
查看次数

如何解决来自 Swift 的警告:Main actor-isolated property can not be muted from a Sendableclosure

我有一个用 Swift 开发的应用程序。运行良好。最近的 Swift 版本现在向我显示有关部分代码的警告,表明这在 Swift 6 中不起作用。而且我不确定解决此问题的最佳方法。这是摘录:

@MainActor class ViewModel: ObservableObject {

    private var _http_last_error: String = "--"

    func fetch_cpuinfo() {
        var request = URLRequest(url: _cpuinfo_url!)
        request.httpMethod = "GET"

        // create a dataTask, which includes a closure to process the response
        let task = URLSession.shared.dataTask(with: request) { (data, response, error) in
            // Check for Error
            if let error = error {
                self._http_last_error = error.localizedDescription // WARNING HERE
                return
            }
        }
        task.resume()
    }
}
Run Code Online (Sandbox Code Playgroud)

具体警告是“Main actor-isolated property '_http_last_error' 无法从 Sendable …

swift

4
推荐指数
1
解决办法
3117
查看次数