Thread Rating:
  • 352 Vote(s) - 2.76 Average
  • 1
  • 2
  • 3
  • 4
  • 5
クリティカルセクション(Critical section)を Curlで実装する方法
01-15-2016, 01:37 PM,
#1
クリティカルセクション(Critical section)を Curlで実装する方法
あるグローバル変数(例えば、Array変数客体)を複数の処理(スレッド)が同時期に実行されると、
破綻をきたす事があるんですが、これを防ぐために使えるのが
クリティカルセクション(Critical section)と知ています。

このCritical sectionの事をCurlで実装しようとしています。

C++とかVC++はインターネット上でいくつかのサンプルコードが見つかりますが、
Curlではなさそうですね。

これに対して御存じの方がいらっしゃれば教えていただければ幸いです。

添付のコードはマイクロソフトのMSDNのサンプルです。(C++のコード)
URLは;
https://msdn.microsoft.com/en-us/library...s.85).aspx
です。

// Global variable
CRITICAL_SECTION CriticalSection;

int main( void )
{
...

// Initialize the critical section one time only.
if (!InitializeCriticalSectionAndSpinCount(&CriticalSection,
0x00000400) )
return;
...

// Release resources used by the critical section object.
DeleteCriticalSection(&CriticalSection);
}

DWORD WINAPI ThreadProc( LPVOID lpParameter )
{
...

// Request ownership of the critical section.
EnterCriticalSection(&CriticalSection);

// Access the shared resource.

// Release ownership of the critical section.
LeaveCriticalSection(&CriticalSection);

...
return 1;
}


Messages In This Thread
クリティカルセクション(Critical section)を Curlで実装する方法 - by Sanchez Chung - 01-15-2016, 01:37 PM
Forum Jump:


Users browsing this thread:
1 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('1309')