小编Max*_*rai的帖子

cmake共享库

我正在使用boost.python构建应用程序.我想将每个cpp模块作为单个共享库.

我有一个cpp文件列表,如何在循环中使用名称取自cpp文件的不同子项目?

例如:

set(Script_srcs
    Module1.cpp
    Module2.cpp
    Module3.cpp
)

some_cycle
  add_library( {NAME} SHARED {PATH} )
Run Code Online (Sandbox Code Playgroud)

谢谢.

c++ loops cmake

0
推荐指数
1
解决办法
2357
查看次数

套接字和线程

我有很多'客户',它们运行在不同的线程中并连接到不同的本地服务器.

在系统中存储~20k套接字有多糟糕?(Linux版).~20k线程有多糟糕?

主要问题是插座,谢谢.

c++ sockets linux performance

0
推荐指数
1
解决办法
141
查看次数

本地对象指针

struct Temp
{
   CString one;
   CString two;
};

class Foo
{
   public:
      Temp obj;
      void somewhere();
}

void Foo::somewhere()
{
   void* pData = static_cast<void*>(&obj);
   OwnMethod(pData); // void OwnMethod(void*);
}
Run Code Online (Sandbox Code Playgroud)

问题是:我应该obj在堆上创建还是这种情况不危险(传递本地类对象指针)?

c++ pointers

0
推荐指数
1
解决办法
75
查看次数

互斥和内联函数

我们和朋友谈论功能和多线程.示例代码是:

void SomeClass::Foo()
{
   std::lock_guard<std::mutex> lock(mMutexObj);

   statement1;
   statement2;
   statement3;
}
Run Code Online (Sandbox Code Playgroud)

因此,我们知道,有时编译器会在需要的地方内联函数.在这种情况下是否有可能:编译器内联Foo函数,所有3个语句都运行并且lock_guard不起作用,因为范围不在此处结束且没有析构函数调用:

// Inlined operations
std::lock_guard<std::mutex> lock(mMutexObj);

statement1;
statement2;
statement3;

// Global scope, where function was inlined continues here...
global statement1;
global statement2;
...;
Run Code Online (Sandbox Code Playgroud)

可能吗?编译器将内联这样的函数的百分之几,或者我不理解内联函数的范围?

c++ multithreading scope

0
推荐指数
1
解决办法
899
查看次数

IE中的JQuery动画

我有这样的代码:

$('div.new_menu').hover(function(){ 
      $(this).stop(false, true).animate({width: $(this).width() + 25}, 450); 
   },function(){ 
      $(this).stop(false, true).animate({width: $(this).width() - 25}, 450); 
   });
Run Code Online (Sandbox Code Playgroud)

它在IE以外的所有浏览器中都很完美.你能帮我改写它吗?

javascript jquery

-1
推荐指数
1
解决办法
85
查看次数

Linux发行版名称解析

我选择这种方式获取linux发行版名称:

ls /etc/*release
Run Code Online (Sandbox Code Playgroud)

现在我必须解析它的名字:

/etc/<name>-release

def checkDistro():
    p = Popen('ls /etc/*release' , shell = True, stdout = PIPE)
    distroRelease = p.stdout.read()

    distroName = re.search( ur"\/etc\/(.*)\-release", distroRelease).group()
    print distroName
Run Code Online (Sandbox Code Playgroud)

但这会打印出distroRelease中的相同字符串.

python regex linux

-1
推荐指数
2
解决办法
445
查看次数