小编Pat*_*oni的帖子

gitx如何将我的'Detached HEAD'提交回master

使用Git X并且必须在某些事情上做到失败.看起来就像几天前我创建了一个名为的分支detached HEAD并且一直致力于它.我的正常过程是承诺master,然后推动它origin.但我无法推动detached HEAD.

我的下一站让我搞砸了.我选择了git checkout master- 我的detached HEAD分支消失了.回到我的项目,过去几天我的所有变化都被抹去了.

无论如何我有可能得到这些改变吗?

git version-control

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

如何检查std :: thread是否仍在运行?

如何检查a std::thread是否仍在运行(以独立于平台的方式)?它缺乏一种timed_join()方法,joinable()并不适用于此.

我想std::lock_guard在线程中使用a锁定互斥锁并使用try_lock()互斥锁的方法来确定它是否仍然被锁定(线程正在运行),但对我来说似乎不必要的复杂.

你知道更优雅的方法吗?

更新:要明确:我想检查线程是否干净地退出.为此,"悬挂"线程被认为正在运行.

c++ multithreading c++11 stdthread

76
推荐指数
4
解决办法
8万
查看次数

Java - 将字符串写入CSV文件

我正在尝试使用java将数据写入csv文件,但是当我尝试使用excel打开生成的文件时,我收到一条错误,说文件已损坏.在记事本中打开文件后,它看起来格式正确,所以我不确定是什么问题.我正在使用FileWriter类将数据输出到文件.

FileWriter writer = new FileWriter("test.csv");

writer.append("ID");
writer.append(',');
writer.append("name");
writer.append(',');
...
writer.append('\n');

writer.flush();
writer.close();
Run Code Online (Sandbox Code Playgroud)

我是否需要在java中使用某些库才能打印到csv文件?我认为只要你使用了正确的格式,你就可以在java中本地执行此操作.

感谢帮助,

java csv excel export-to-csv

36
推荐指数
3
解决办法
21万
查看次数

如何在c ++中使用/创建unique_lock?

请问,任何人都可以解释如何在c ++中使用和创建unique_lock吗?它应该被用来既能获得互斥到显示器的任何程序,并能在条件变量进行等待()...我不是从文档了解我应该如何创建它.是必要的互斥?这是一个伪代码:

/* compile with g++, flags -std=c++0x -lpthread */

#include <condition_variable>
#include <mutex>
#include <thread>
#include <iostream>
#include <string.h>
#include <unistd.h>

class monitorTh {

private:

    std::mutex m;
    std::condition_variable waitP;
    std::condition_variable waitC;
    char element[32];
    std::unique_lock::unique_lock l;

public:
    void produce(char* elemProd) {
        l.lock();
        if (/*already_present_element*/) {
            waitP.wait(l);
        }
        else {/*produce element*/}
        l.unlock();
    }

    void consume() {
        /*something specular*/
    }
};

int main(int argc, char* argv[]) {

    monitorTh* monitor = new monitorTh();
    char prodotto[32] = "oggetto";

    std::thread producer([&]() {
        monitor->produce(prodotto);
    });

    std::thread …
Run Code Online (Sandbox Code Playgroud)

c++ locking c++11

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

boost shared_ptr <XXX>线程安全吗?

我有一个问题boost::shared_ptr<T>.

有很多线程.

using namespace boost;

class CResource
{
  // xxxxxx
}

class CResourceBase
{
public:
   void SetResource(shared_ptr<CResource> res)
   {
     m_Res = res;
   }

   shared_ptr<CResource> GetResource()
   {
      return m_Res;
   }
private:
   shared_ptr<CResource> m_Res;
}

CResourceBase base;

//----------------------------------------------
// Thread_A:
    while (true)
    {
       //...
       shared_ptr<CResource> nowResource = base.GetResource();
       nowResource.doSomeThing();
       //...
    }

// Thread_B:
    shared_ptr<CResource> nowResource;
    base.SetResource(nowResource);
    //...
Run Code Online (Sandbox Code Playgroud)

Q1

如果Thread_A不关心nowResource是最新的,那么这部分代码会有问题吗?

我的意思是当Thread_B没有SetResource()完全,Thread_A得到一个错误的智能点GetResource()

Q2

线程安全是什么意思?

如果我不关心资源是否是最新的,那么shared_ptr<CResource> nowResource当程序nowResource被释放时会崩溃程序还是会破坏问题 …

c++ boost thread-safety shared-ptr boost-smart-ptr

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

如何在合并期间从一个分支中选择文件?

前段时间我从我的master分公司创建了一个分支.我们称之为new_feature.在我工作的时候new_feature,master分支跟随其正常演变.现在new_feature已经准备好合并到master我看到一些冲突,所有这些冲突都是与实际新功能完全无关的文件(比如一些配置文件和已更改的喜欢master).我将手动解决冲突,但我想知道,因为这是一种经常发生的情况,我如何才能将new_feature分支合并到master同时始终保持master文件的版本以防出现冲突?

我确信这很简单并且与"保留版本"有关,但因为它是一个非常敏感的主题,我宁愿问,也不要抱歉.

git

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

cursor.rowcount在python3k中的sqlite3中始终为-1

我试图在我的Python3k程序中得到rowcount一个sqlite3 cursor,但我很困惑,因为rowcount它始终是-1,尽管Python3文档说(实际上它是矛盾的,它应该是None).即使在取出所有行之后,rowcount仍然留在-1.这是一个sqlite3错误吗?我已经检查过表中是否有行.

我可以绕过这个检查,如果一个fetchone()返回不同的东西None,但我认为这个问题很好讨论.

谢谢.

python database sqlite

24
推荐指数
4
解决办法
4万
查看次数

如何从根目录中包含stdafx.h?

使用VS中的"显示所有文件"选项,我添加了一个文件夹并在该文件夹中创建了一个新类.由于我使用的是预编译头文件,因此我还需要包含相对于新类文件的根目录中的stdafx.h.

在我的cpp文件中我有

#include "..\stdafx.h"
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

错误C1010:查找预编译头时意外结束文件.你忘了在你的来源添加'#include"stdafx.h"'吗?

我的理解是,..应该指示编译器进入一个目录级别?

c++ visual-c++

23
推荐指数
4
解决办法
2万
查看次数

C++:脚本中发生异常:basic_string :: _ S_construct NULL无效

我从数据库函数返回一个字符串或NULL到主程序,有时我从异常中得到这个错误:

basic_string::_S_construct NULL not valid
Run Code Online (Sandbox Code Playgroud)

我认为它是因为从数据库函数返回NULL值?有任何想法吗???

string database(string& ip, string& agent){
  //this is just for explanation
  .....
  ....

  return NULL or return string

}

int main(){
   string ip,host,proto,method,agent,request,newdec;
   httplog.open("/var/log/redirect/httplog.log", ios::app);

   try{
      ip = getenv("IP");
      host = getenv("CLIENT[host]");
      proto = getenv("HTTP_PROTO");
      method = getenv("HTTP_METHOD");
      agent = getenv("CLIENT[user-agent]");

      if (std::string::npos != host.find(string("dmnfmsdn.com")))
         return 0;

      if (std::string::npos != host.find(string("sdsdsds.com")))
         return 0;

      if (method=="POST")
         return 0;

      newdec = database(ip,agent);
      if (newdec.empty())
         return 0;
      else {
         httplog << "Redirecting to splash page for user IP: …
Run Code Online (Sandbox Code Playgroud)

c++ linux

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

缺少qt + mingw中的std :: runtime_error

我尝试使用Qt(4.6.3)+ MinGW编译以下代码:

#include <QtCore/QCoreApplication>
#include <exception>

int main(int argc, char *argv[])
{
    throw std::runtime_error("");

    QCoreApplication a(argc, argv);

    return a.exec();
}
Run Code Online (Sandbox Code Playgroud)

......并得到了这个错误:

..\untitled11\main.cpp:6: error: 'runtime_error' is not a member of 'std'
Run Code Online (Sandbox Code Playgroud)

项目从头创建(控制台应用程序),专业文件:

QT       += core

QT       -= gui

TARGET = untitled11
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app

SOURCES += main.cpp
Run Code Online (Sandbox Code Playgroud)

试图用Qt + MSVC2008编译器编译这个 - 工作正常.

这是标准的例外,不知道为什么会丢失.

qt runtime-error mingw

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