atomic

    6

    1답변

    우분투 OS에서 g ++ 버전 4.4.3을 사용하고 있습니다. 이 행렬 here에 따라 std::atomic을 지원한다고 가정합니다. 때마다 나는 컴파일러 나에게 오류를 제공하고 error: atomic: No such file or directory을 말한다 #include <atomic> 사용합니다. 같은 문제가 발생 했습니까? 내가 대신 #incl

    0

    1답변

    저는 현재 MacOS에 취미 프로젝트로 Windows C++ 라이브러리를 포팅하고 있습니다. Win Interlocked * 함수를 사용하여 코드를 우연히 발견 했으므로 일반적으로 주제를 읽으려고했습니다. 여기에 관련 질문을 읽고 있으므로 OS에 따라 이러한 작업을 수행하는 다양한 방법이 있다는 것을 알고 있습니다. 윈도우즈에서는 OSAtomic *, Ma

    1

    3답변

    mmap'ed 파일을 사용하여 프로세스간에 데이터를 공유합니다. 코드는 다음과 같다 : struct Shared { int Data; }; int file = open("file.dat", O_RDWR); Shared* shared = static_cast<Shared*>( mmap(0, sizeof(Shared), PROT_READ |

    11

    1답변

    NSObject의 보유 메소드는 원자입니까? 예를 들어 두 개의 다른 스레드에서 동일한 개체를 유지하는 경우 보유 수를 두 번 늘리거나 보유 수를 한 번만 증가시킬 수 있다고 약속합니까? 감사합니다.

    6

    4답변

    나는 멀티 스레딩에 관심이있다. 필드에 많은 문제가 있습니다. 예를 들어, 포인터 쓰기가 원자 적이라는 보장은 없습니다. 나는 이것을 얻었지만 이것이 실제로 일어날 때 가장 대중적인 현재 구성이 무엇인지 알고 싶습니까? 예를 들어 내 Macbook Pro/gcc에서 포인터는 확실히 원자 적으로 표시됩니다.

    0

    1답변

    정수와 같은 영구적 인 키 - 값이 저장되어있어 정수를 빠르고 쉽게 증감, 감소 및 검색 할 수 있습니다. 나는 SQL 데이터베이스 뭔가를 구현할 수 있다는 것을 알고 있지만, 나는 그 두 가지 단점을 참조하십시오 그것은중인 작업에 대한 헤비급의를. 내가 필요로하는 것은 "server [key] .inc()"또는 "server [key] .dec()"라고

    2

    3답변

    C/C++ 프로그래밍의 기본 요소는 무엇입니까? 방금 ​​cppreference.com을 방문했는데 (당연히 제목을 쓰지 않고 끝내기를 기다린다.) 집이 C++ 0x/C++ 1x의 일부를 설명하기 위해 바뀌었다. (C+++라고 부르 자.) 새로운 기능. 내 좀비 프로그래머의 눈에 전혀 보이지 않는 이상한 신기술이었던 <atomic>. 원자 폭탄이나 블랙홀을

    1

    1답변

    나는 현재 프로젝트에 대한 후원에서 atomic.hpp 포팅하고 있는데이 추가 유형에 템플릿있어 이에 원자 추가 기능을 일반화하고 싶은 : template <typename T, typename V> inline T add(volatile T* mem, V val) { T r; asm volatile ( "lock\

    3

    1답변

    자물쇠를 보유하고있는 스레드가 다른 스레드로 전달할 수있는 유형의 잠금을 찾고 있습니다. 여기 내가 원하는 이유 : 내가 ConcurrentHashMap 유사한 클래스가 - 대부분의 수정이 잠겨 할 단 하나의 세그먼트를 필요로 여러 세그먼트로 분할 된 전문 수집. 일부는 두 세그먼트가 잠길 것을 요구합니다. (특히, 한 세그먼트에서 다른 세그먼트로 이동하기

    1

    2답변

    나는 학교 (eons ago) 이전부터 어셈블리를 해본 적이 없으며 x86을 한번도 해본 적이 없다.하지만 누군가가 원자 연산을하지 않는 오래된 기존 코드에서 성가신 버그를 발견했다. 코드를 작성한 사람은 오래 전에 사라졌고 여기 주변의 아무도 내 질문에 대한 답을 모른다. 128 비트 값에 대한 원자 복사를 작성해야합니다. 다음과 같이 내가 현재 가지고있