This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* A std::shared_ptr uses reference counting, so circular references are potentially a problem. | |
To break up cycles, std::weak_ptr can be used to access the stored object. | |
The stored object will be deleted if the only references to the object are weak_ptr references. | |
weak_ptr therefore does not ensure that the object will continue to exist, but it can ask for the resource. */ | |
std::shared_ptr<int> p1(new int(5)); | |
std::weak_ptr<int> wp1 = p1; //p1 owns the memory. | |
{ | |
std::shared_ptr<int> p2 = wp1.lock(); //Now p1 and p2 own the memory. | |
if(p2) //Always check to see if the memory still exists |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//MAX using Lambda | |
std::vector<int> m_MsgTypeMaximumSize; | |
m_MsgTypeMaximumSize.push_back(7); | |
m_MsgTypeMaximumSize.push_back(5); | |
m_MsgTypeMaximumSize.push_back(20); | |
m_MsgTypeMaximumSize.push_back(1); | |
m_MsgTypeMaximumSize.push_back(3); | |
int max = 0; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include "Sync.h" | |
Sync::Sync() | |
{ | |
InitializeCriticalSection(&m_cs); | |
} | |
Sync::~Sync() | |
{ | |
DeleteCriticalSection(&m_cs); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
bool CMyObj::StartThread() | |
{ | |
m_Running = true; | |
m_hThreadHandle = CreateThread(NULL,0,ThreadFunction,this,0,&this->m_ThreadID); | |
if(m_hThreadHandle == nullptr) | |
m_Running = false; | |
return m_Running | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
Syntax: | |
LONG __cdecl InterlockedCompareExchange(__inout LONG volatile *Destination, | |
__in LONG Exchange, | |
__in LONG Comparand | |
); | |
Returns the initial value of 'Destination'. | |
Note: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// --- | |
// - Creating critical section variable - | |
// --- | |
pthread_mutex_t m; | |
// --- | |
// - Initializing - | |
//-- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
static inline std::string <rim(std::string &s){ | |
s.erase(s.begin(), std::find_if(s.begin(), s.end(), std::not1(std::ptr_fun<int, int>(std::isspace)))); | |
return s; | |
} | |
static inline std::string &rtrim(std::string &s) { | |
s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::ptr_fun<int, int>(std::isspace))).base(), s.end()); | |
return s; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <map> | |
#include <string> | |
using std::map; | |
using std::string; | |
class CTeste | |
{ | |
public: | |
CTeste(){} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
SELECT prosrc FROM pg_proc WHERE proname = <function name>; |