小编Chr*_*ung的帖子

Windbg:如何在C++函数的一个重载上设置断点?

我有一个c ++函数的两个重载,我想在其中一个上设置一个断点:

0:000> bu myexe!displayerror
Matched: 00000000`ff3c6100 myexe!displayError (int, HRESULT, wchar_t *)
Matched: 00000000`ff3c60d0 myexe!displayError (int, HRESULT)
Ambiguous symbol error at 'myexe!displayerror'
Run Code Online (Sandbox Code Playgroud)

哎呀我可以在所有重载上设置断点,但似乎无法弄清楚如何:

0:000> bu myexe!displayerror*
Matched: 00000000`ff3c6100 myexe!displayError (int, HRESULT, wchar_t *)
Matched: 00000000`ff3c60d0 myexe!displayError (int, HRESULT)
Ambiguous symbol error at 'myexe!displayerror*'
Run Code Online (Sandbox Code Playgroud)

c++ debugging windbg

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

你可以冻结一个C/C++进程并在另一个主机上继续它吗?

我想知道是否可以生成"核心"文件,将if复制到另一台机器然后继续执行该机器上的核心文件?

我见过gcore实用程序,它将从正在运行的进程中生成一个核心文件.但我不认为gdb可以继续基于核心文件执行.

有没有办法只是转储堆/堆栈,并在以后恢复它们?

coredump process process-migration

11
推荐指数
2
解决办法
4070
查看次数

C++中成员函数的内存分配

#include<iostream>
using namespace std;
class A
{

};
class B
{
        public:
                void disp()
                {
                        cout<<" This is not virtual function.";
                }
};
class C
{
        public:
                virtual void disp()
                {
                        cout<<"This is virtual function.";
                }
};
int main()
{
        cout<<"class A"<<sizeof(A)<<endl;
        cout<<"class B"<<sizeof(B)<<endl;
        cout<<"class C"<<sizeof(C)<<endl;
        return 0;
}
Run Code Online (Sandbox Code Playgroud)

sizeof类A和类B都只是1个字节.B中成员函数disp的内存分配是什么

c++

11
推荐指数
1
解决办法
9162
查看次数

为什么在Guava 10中不推荐使用softKeys()?

从Guava 10开始,MapMaker.softKeys不推荐使用,并且不存在相应的方法CacheBuilder.

为什么要做出这种改变?使用它的现有代码需要做什么?

java guava

11
推荐指数
2
解决办法
1218
查看次数

有没有办法在运行时获取正在使用的Guava版本?

我快速浏览了Guava源代码和文档,似乎都没有提到版本.我想知道是否有办法在运行时获得Guava的版本信息.

如果实际上没有这样的东西,则不必通过任何getter访问此版本信息; 如果它藏在某个地方某个地方,当Guava加载时没有得到GC,这就足够了.

这个版本信息是否在运行时可用?


我有一个非常具体的用途.我的工作很大一部分是分析Java堆转储,以识别和修复代码中导致内存使用过高的地方.对于这个任务,我使用fasthat,这是一个经过大量修改的jhat版本,具有对我的工作有用的特殊功能.

其中一个功能是显示容器的内容.我已经为这样的人实现了这个ArrayList,HashMap,ConcurrentHashMap,等(我的需求实现类型的打印机,基于我在我们的堆转储遇到的问题.)目前,我执行番石榴的一个类型的打印机CustomConcurrentHashMap.

由于结构的布局可以在不同版本之间进行更改,因此我的代码会根据正在使用的版本调整其解包行为.例如,在工作中,我们曾经使用JRuby 1.2,但最近切换到JRuby 1.6,因此我为这两个版本都有类型打印机,并根据它在堆转储中找到的版本信息选择版本.

那么,这就是问题第二段的要点:如果版本信息在堆转储中的任何地方,那就是我所需要的.

在任何人问之前:堆转储数据不是"实时",所以你不能简单地打电话toString等.你真的必须走数据结构来提取出来,你真的必须使用实现细节到第n度.;-)

java guava

11
推荐指数
1
解决办法
1429
查看次数

在Windbg中调试C++ STL容器

Windbg粉丝声称它非常强大,我倾向于同意.但是当谈到调试STL容器时,我总是陷入困境.如果变量在堆栈上,!stl扩展有时会将其计算出来,但是当具有复杂类型(例如std::vector<TemplateField, std::allocator<TemplateField> >)的容器在堆上或其他结构的一部分上时,我只是不知道如何查看其内容.

感谢任何提示,指针.

c++ stl windbg

10
推荐指数
1
解决办法
6250
查看次数

异常在线程 "主要" 因为java.lang.UnsupportedClassVersionError:danbikel /分析器/培训师(不支持MAJOR.MINOR版本50.0)

我正在尝试运行一个用Java构建的解析器,但每次我尝试使用该类时,我都会收到上述错误("线程中的异常"主"java.lang.UnsupportedClassVersionError:danbikel/parser/Trainer(不支持的主要版本).次要版本50.0)").

根据我的阅读,这可能是用于编译和运行代码的Java版本之间不匹配的问题; 但我确保我的JAVA_HOME环境设置为1.6版本,这是解析器安装指南推荐的版本.

服务器上安装了旧版本的Java,但我对此无能为力.我还能做些什么来解决这个错误吗?

java

9
推荐指数
2
解决办法
6万
查看次数

如何在Linux/PHP堆栈上将文档转换为PDF?

我想在我的网站上显示文档.服务器托管在Debian机器上.我以为我可以允许上传支持文档,然后使用Linux应用程序或PHP应用程序将文档转换为PDF并在HTML页面中显示.是否有任何API或二进制文件允许我这样做?

php linux pdf

8
推荐指数
1
解决办法
9075
查看次数

用于空白的javascript正则表达式或&nbsp;

我正在为空白寻找一个javascript正则表达式.我在循环中检查几个不同的字符串,我需要找到其中有大空格的字符串.

白色空格字符串是一个循环,像这样......

请阅读此代码,var whitespace = "&nbsp;"然后循环只会在其上连接更多非破坏空格.

var whitespace = "&nbsp;"

        for (var x = 0; x < 20; x++) {
            whitespace += "&nbsp;"
        }
Run Code Online (Sandbox Code Playgroud)

然后它会在字符串concat中使用.

sometext += whitespace + someData;
Run Code Online (Sandbox Code Playgroud)

我需要识别包含空格(20个空格)的字符串.

或者我应该做一个contains(whitespace)类似的东西.

任何帮助表示赞赏.

干杯,〜在圣地亚哥

javascript regex

8
推荐指数
3
解决办法
2万
查看次数

LINQ to SQL其中ID不在some_list中

我正在尝试创建一个LINQ to SQL语句,该语句过滤ID 不在某些整数列表中的结果.我意识到.contains()方法不能在Linq to SQL中使用,但为了解释我想要做的事情,这里是我想要做的:

nextInvention = (from inv in iContext.Inventions
                    where !historyList.Contains(inv.Id)
                    orderby inv.DateSubmitted ascending
                    select inv).First<Invention>();
Run Code Online (Sandbox Code Playgroud)

知道我怎么可能这样做吗?

谢谢!

c# asp.net linq-to-sql

8
推荐指数
1
解决办法
9348
查看次数