ഇംഗ്ലീഷ്ഫ്രഞ്ച്സ്പാനിഷ്

OnWorks ഫെവിക്കോൺ

rrdthreads - ക്ലൗഡിൽ ഓൺലൈനിൽ

ഉബുണ്ടു ഓൺലൈൻ, ഫെഡോറ ഓൺലൈൻ, വിൻഡോസ് ഓൺലൈൻ എമുലേറ്റർ അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിവയിലൂടെ OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് ദാതാവിൽ rrdthreads പ്രവർത്തിപ്പിക്കുക

Ubuntu Online, Fedora Online, Windows online emulator അല്ലെങ്കിൽ MAC OS ഓൺലൈൻ എമുലേറ്റർ എന്നിങ്ങനെയുള്ള ഞങ്ങളുടെ ഒന്നിലധികം സൗജന്യ ഓൺലൈൻ വർക്ക്സ്റ്റേഷനുകളിലൊന്ന് ഉപയോഗിച്ച് OnWorks സൗജന്യ ഹോസ്റ്റിംഗ് പ്രൊവൈഡറിൽ പ്രവർത്തിപ്പിക്കാവുന്ന കമാൻഡ് rrdthreads ആണിത്.

പട്ടിക:

NAME


rrdthreads - മൾട്ടി-ത്രെഡഡ് പ്രോഗ്രാമുകളിൽ ഉപയോഗിക്കുന്നതിന് RRD ലൈബ്രറി ലിങ്ക് ചെയ്യുന്നതിനുള്ള വ്യവസ്ഥകൾ

സിനോപ്സിസ്


മൾട്ടി-ത്രെഡഡ് പ്രോഗ്രാമുകളിൽ librrd ഉപയോഗിക്കുന്നതിന് RRD പോലെ ചില അധിക മുൻകരുതലുകൾ ആവശ്യമാണ്
ലൈബ്രറി അതിന്റെ യഥാർത്ഥ രൂപത്തിൽ ത്രെഡ്-സേഫ് ആയിരുന്നില്ല. ഈ പ്രമാണം വിവരിക്കുന്നു
നിങ്ങളിലെ librrd-ന്റെ മൾട്ടി-ത്രെഡ് പതിപ്പ് ഉപയോഗിക്കുന്നതിനുള്ള ആവശ്യകതകളും അപകടങ്ങളും
സ്വന്തം പ്രോഗ്രാമുകൾ. ലൈബ്രറി ത്രെഡ് നിലനിർത്തുന്നതിന് ഭാവിയിലെ ആർആർഡി വികസനത്തിനായുള്ള സൂചനകളും ഇത് നൽകുന്നു-
സുരക്ഷിതം.

നിലവിൽ ചില RRD പ്രവർത്തനങ്ങൾ മാത്രമാണ് ത്രെഡ്-സേഫ് രീതിയിൽ നടപ്പിലാക്കുന്നത്. അവയെല്ലാം അവസാനിക്കുന്നു
സാധാരണ ""_r"" പ്രത്യയം.

വിവരണം


മൾട്ടി-ത്രെഡഡ് പ്രോഗ്രാമുകളിൽ librrd ഉപയോഗിക്കുന്നതിന് നിങ്ങൾ ഇനിപ്പറയുന്നവ ചെയ്യണം:

· ഇതുമായി ലിങ്ക് ചെയ്യുക librrd_th ഇതിനുപകരമായി librrd (ലിങ്ക് ചെയ്യുമ്പോൾ "-lrrd_th" ഉപയോഗിക്കുക)

സാധാരണ API ഫംഗ്‌ഷനുകൾക്ക് പകരം ""_r"" ഫംഗ്‌ഷനുകൾ ഉപയോഗിക്കുക

· അറ്റ്-സ്റ്റൈൽ സമയ സ്പെസിഫിക്കേഷനുകളൊന്നും ഉപയോഗിക്കരുത്. അത്തരം സമയ സവിശേഷതകളുടെ പാഴ്‌സിംഗ് ആണ്
ഭയങ്കര നോൺ-ത്രെഡ്-സേഫ്.

*"_r" അല്ലാത്ത ഫംഗ്‌ഷനുകൾ ഒരിക്കലും ഉപയോഗിക്കരുത്, അത് ഫംഗ്‌ഷൻ ആണെന്ന് വ്യക്തമായി രേഖപ്പെടുത്തിയിട്ടില്ലെങ്കിൽ
ചവിട്ടി-സുരക്ഷിതം.

ഏതൊരു "librrd_th"-ലേക്കുള്ള ആദ്യ കോളിന് മുമ്പ് ഓരോ ത്രെഡും "rrd_get_context()" എന്ന് വിളിക്കണം
ത്രെഡ് നിർദ്ദിഷ്ട ഡാറ്റ സജ്ജീകരിക്കുന്നതിനുള്ള പ്രവർത്തനം. ഇത് കർശനമായി ആവശ്യമില്ല, പക്ഷേ
ഈ ഫംഗ്‌ഷൻ ഉപയോഗിച്ച് മെമ്മറി അലോക്കേഷൻ ചെയ്യാൻ കഴിയുമോ എന്ന് പരിശോധിക്കാനുള്ള ഒരേയൊരു മാർഗ്ഗമാണിത്.
അല്ലാത്തപക്ഷം, മെമ്മറി കുറഞ്ഞ സാഹചര്യത്തിൽ ഒരു SIGSEGV ഉപയോഗിച്ച് പ്രോഗ്രാം മരിക്കാനിടയുണ്ട്.

· ലൈബ്രറിയിലേക്കുള്ള ഏതൊരു കോളിനും മുമ്പായി എപ്പോഴും "rrd_error_clear()" എന്ന് വിളിക്കുക. അല്ലെങ്കിൽ വിളി
മുമ്പത്തെ ചില പിശകുകൾ കാരണം പരാജയപ്പെട്ടേക്കാം.

കുറിപ്പുകൾ വേണ്ടി DRR സംഭാവന ചെയ്യുന്നവർ
ഇപ്പോൾ മുതൽ RRD വികസിപ്പിക്കുമ്പോൾ ചില മുൻകരുതലുകൾ പാലിക്കേണ്ടതുണ്ട്:

· ലൈബ്രറി കോഡിൽ ത്രെഡ്-സേഫ് ഫംഗ്‌ഷനുകൾ മാത്രം ഉപയോഗിക്കുക. പലപ്പോഴും ഉപയോഗിക്കുന്ന പല libc ഫംഗ്‌ഷനുകളും അങ്ങനെയല്ല
ത്രെഡ്-സുരക്ഷിതം. ഇനിപ്പറയുന്ന സാഹചര്യങ്ങളിൽ അല്ലെങ്കിൽ ഇനിപ്പറയുന്ന ലൈബ്രറി ഉപയോഗിക്കുമ്പോൾ ശ്രദ്ധിക്കുക
പ്രവർത്തനങ്ങൾ:

· "strerror()" എന്നതിലേക്കുള്ള നേരിട്ടുള്ള കോളുകൾ ഒഴിവാക്കേണ്ടതാണ്: പകരം "rrd_strerror()" ഉപയോഗിക്കുക, അത്
ഒരു ത്രെഡ് പിശക് സന്ദേശം നൽകുന്നു.

· "getpw*", "getgr*", "Gethost*" ഫംഗ്‌ഷൻ ഫാമിലികൾ (കൂടാതെ മറ്റു ചിലത് "ഗെറ്റ്*"
ഫംഗ്‌ഷനുകൾ) ത്രെഡ്-സേഫ് അല്ല: *"_r" വേരിയന്റുകൾ ഉപയോഗിക്കുക

· സമയ പ്രവർത്തനങ്ങൾ: "asctime", "ctime", "gmtime", "localtime": *"_r" വകഭേദങ്ങൾ ഉപയോഗിക്കുക

· "strtok": "strtok_r" ഉപയോഗിക്കുക

· "tmpnam": "tmpnam_r" ഉപയോഗിക്കുക

· മറ്റു പലതും (ലുക്ക്അപ്പ് ഡോക്യുമെന്റേഷൻ)

· പേരുള്ള ഒരു തലക്കെട്ട് ഫയൽ rrd_is_thread_safe.h GNU-നൊപ്പം പ്രവർത്തിക്കുന്ന തരത്തിൽ നൽകിയിരിക്കുന്നു
C-preprocessor to "poison" എന്നതിലേക്കുള്ള ഏറ്റവും സാധാരണമായ ത്രെഡ്-സേഫ് ഫംഗ്‌ഷനുകളിൽ ചിലത്
"#പ്രാഗ്മ ജിസിസി വിഷം" നിർദ്ദേശം. നിങ്ങൾ ആഗ്രഹിക്കുന്ന ഉറവിട ഫയലുകളിൽ ഈ തലക്കെട്ട് ഉൾപ്പെടുത്തിയാൽ മതി
ത്രെഡ് സുരക്ഷിതമായി സൂക്ഷിക്കുക.

· ആഗോള വേരിയബിളുകൾ അവതരിപ്പിക്കരുത്!

നിങ്ങൾ ശരിക്കും ഒരു ഗ്ലോബൽ വേരിയബിൾ ഉപയോഗിക്കേണ്ടതുണ്ടെങ്കിൽ, നിങ്ങൾക്ക് ഒരു പുതിയ ഫീൽഡ് ചേർക്കാം
"rrd_context" ഘടനയും പരിഷ്‌ക്കരണവും rrd_error.c, rrd_thread_safe.c ഒപ്പം
rrd_non_thread_safe.c

· *"_r" ൽ "getopt" അല്ലെങ്കിൽ "getopt_long" ഉപയോഗിക്കരുത് (നേരിട്ടോ പരോക്ഷമായോ അല്ല).

"getopt" ഗ്ലോബൽ വേരിയബിളുകൾ ഉപയോഗിക്കുകയും ഒരു മൾട്ടി-ത്രെഡഡ് ആപ്ലിക്കേഷനിൽ മോശമായി പെരുമാറുകയും ചെയ്യുന്നു
ഒരേസമയം വിളിച്ചു. പകരം എല്ലാ ഓപ്ഷനുകളും ഫംഗ്‌ഷനായി എടുക്കുന്ന ഒരു *_r ഫംഗ്‌ഷൻ നൽകുക
പരാമീറ്ററുകൾ. വേരിയബിൾ ലെങ്ത് ആർഗ്യുമെന്റിനായി നിങ്ങൾക്ക് argc, **argv ആർഗ്യുമെന്റുകൾ നൽകാം
പട്ടികകൾ. ഉദാഹരണമായി "rrd_update_r" കാണുക.

· "rrd_parsetime" ഫംഗ്‌ഷൻ ഉപയോഗിക്കരുത്!

ഇത് ധാരാളം ആഗോള വേരിയബിളുകൾ ഉപയോഗിക്കുന്നു. രൂപകൽപ്പന ചെയ്തിട്ടില്ലാത്ത ഫംഗ്‌ഷനുകളിൽ നിങ്ങൾക്ക് ഇത് ഉപയോഗിക്കാം
ത്രെഡ്-സേഫ്, ചില പ്രവർത്തനങ്ങളുടെ "_r" പതിപ്പ് പൊതിയുന്ന ഫംഗ്‌ഷനുകളിലേതുപോലെ (ഉദാ,
"rrd_create", എന്നാൽ "rrd_create_r" ൽ അല്ല)

നിലവിൽ നടപ്പിലാക്കിയത് തേൻ SAFE പ്രവർത്തനങ്ങൾ
നിലവിൽ "rrd_update", "rrd_create", "rrd_dump" എന്നിവയുടെ ത്രെഡ്-സേഫ് വേരിയന്റുകൾ നിലവിലുണ്ട്.
"rrd_info", "rrd_last", "rrd_fetch".

onworks.net സേവനങ്ങൾ ഉപയോഗിച്ച് ഓൺലൈനായി rrdthreads ഉപയോഗിക്കുക


സൗജന്യ സെർവറുകളും വർക്ക്സ്റ്റേഷനുകളും

Windows & Linux ആപ്പുകൾ ഡൗൺലോഡ് ചെയ്യുക

ലിനക്സ് കമാൻഡുകൾ

Ad