પહેલેથી ચાલી રહેલા હેલ્પર વિશેના સંદેશને જીવનચક્રની સૂચન તરીકે લો, પ્રક્રિયાઓ મારવાનું શરૂ કરવાની પરવાનગી તરીકે નહીં. જોખમી પગલું મારવું નથી, પણ તે પહેલાંની ઓળખ છે, કારણ કે એક Mac પર સમાન નામનાં ઘણાં ઘટકો હોઈ શકે અને તેમાંથી ફક્ત એક જ કનેક્શન ધરાવે છે. પહેલાં ઓળખનો રેકોર્ડ બનાવો. પછી નક્કી કરો કે મારવું સાચી ક્રિયા છે કે નહીં.

કાર્ય કરતા પહેલાં ઓળખનો રેકોર્ડ બનાવો

ચાર તથ્યો પ્રક્રિયાને ઓળખી શકાય તેવી બનાવે છે: વર્તમાન PID અને તેનો શરૂ થવાનો સમય, તે જે એક્ઝિક્યુટેબલ અને ઉત્પાદનનું છે, તે જે વપરાશકર્તા કે વિશેષાધિકાર સંદર્ભ હેઠળ ચાલે છે, અને તેને શરૂ કરનાર કંઈપણ. ps -o pid,ppid,user,etime,command -p 1234 પ્રથમ ત્રણ એક લીટીમાં આપે છે, જેમાં પ્રક્રિયા કેટલો સમય જીવંત છે તે પણ છે. Activity Monitor એ જ માહિતી વધુ મૈત્રીપૂર્ણ ચહેરા સાથે દર્શાવે છે. નિયંત્રક ઉમેરો, એટલે કે તેને શરૂ કરવા અને બંધ કરવા માટે જવાબદાર એપ્લિકેશન કે સેવા. આ ચાર સાથે પ્રક્રિયા નામ રહેતી નથી અને એવી વસ્તુ બને છે જેના વિશે તમે વિચારી શકો.

જો ચારમાંથી એક અજાણ્યું હોય, તો ત્યાં જ અટકો. અજાણ્યો ઘટક પ્રકાશક કે વ્યવસ્થાપક માટે પ્રશ્ન છે, પ્રયોગ નહીં.

જૂના લોગમાંનો PID હવે બીજા કોઈનો છે

પ્રક્રિયા ID ફરી વપરાય છે, અને ગઈકાલના લોગમાંથી કોપી કરેલો નંબર હવે સંપૂર્ણ અસંબંધિત કંઈક તરફ ઇશારો કરી શકે છે. કોઈ પણ તારણ કાઢતા પહેલાં શરૂ થવાના સમયની સરખામણી લોગના ટાઇમસ્ટેમ્પ સાથે કરો. એ જ વાત ટૂંકા નામને લાગુ પડે છે: એક ઉત્પાદનના બે બિલ્ડ સમાન નામ અને જુદા હેતુવાળા હેલ્પર મોકલી શકે છે. ઓળખ એ ટ્યુપલ છે, ક્યારેય ફક્ત નંબર નહીં.

બીજું કંઈ સ્પર્શ કરતા પહેલાં ભૂમિકાઓ અલગ કરો. એક કનેક્શનનો ક્લાઇન્ટ, ઘણી એપ્લિકેશનોને સેવા આપતો વહેંચાયેલ હેલ્પર, અને બીજા લોકોના સત્રો સ્વીકારતો સર્વર—બધા યાદીમાં પૃષ્ઠભૂમિ પ્રક્રિયા જેવા દેખાય છે. તેમાંથી ફક્ત એક જ તમે ધ્યાનમાં ન લીધેલા પરિણામો વિના બંધ કરી શકાય.

સિગ્નલથી નહીં, માલિક દ્વારા બંધ કરો

જે નિયંત્રણ વસ્તુનો માલિક છે તેનાથી શરૂ કરો: કનેક્શનનું ડિસ્કનેક્ટ બટન, સેવાનો સમર્થિત બંધ કરવાનો આદેશ, અથવા મેનેજમેન્ટ એજન્ટની પોતાની ક્રિયા. આ માર્ગો ઉત્પાદન જે વિઘટનની અપેક્ષા રાખે છે તે ચલાવે છે, જેમાં રૂટ દૂર કરવા અને ટનલ ઉપકરણ બંધ કરવાનો સમાવેશ થાય છે. સિગ્નલ એ બધું છોડી દે છે અને પાછળ સ્થિતિ છોડે છે.

પછી શું રહે છે તે જુઓ. મેમરીમાં રહેતી પ્રક્રિયા કદાચ આગલા કનેક્શનની રાહ જોતી હોય, જે નિષ્ફળ બંધ કરવા કરતાં ડિઝાઇનની પસંદગી છે.

સુપરવાઇઝર તમે મારેલી પ્રક્રિયાને ફરી કેમ શરૂ કરે છે

જો લોન્ચ ડિમન કે ઓટો-કનેક્ટ નીતિ ટનલ ચાલુ રાખવા માંગે છે, તો પ્રક્રિયા મારવાથી કંઈ વ્યક્ત થતું નથી. સુપરવાઇઝર બહાર જવાનું જુએ છે અને તેને ફરી શરૂ કરે છે, કેટલીકવાર તમે લોગ વાંચવાનું પૂરું કરો તે પહેલાં.

સુપરવાઇઝર સાથે લડતા પહેલાં તેને શોધો. launchctl list લોડ થયેલી જોબ અને તેમના લેબલ દર્શાવે છે, અને જીવંત રાખવાની સેટિંગવાળી જોબ ડિઝાઇન મુજબ બહાર જવા પર ફરી શરૂ થાય છે. ત્યાં સાચી ક્રિયા ઇરાદો બદલવાની છે: જોબ અનલોડ કરો, ઓટો-કનેક્ટ નીતિ બંધ કરો, અથવા વ્યવસ્થાપકને એ કરવા કહો. બળપૂર્વક બંધ કરવું અલગ અર્થ ધરાવતું અલગ સાધન છે, અને તે અટવાયેલી પ્રક્રિયા માટેના દસ્તાવેજી પુનઃપ્રાપ્તિ પ્રક્રિયાનું છે, નિયમિત કનેક્શન વ્યવસ્થાપનનું નહીં.

મારવાનું નહીં, જીવનચક્રની ઘટના નોંધો

ઘટકની ઓળખ, ક્લાઇન્ટની આવૃત્તિ, પ્રથમ સંબંધિત જીવનચક્ર ઘટના, અને તમે શું કર્યું તે લખો. ઘટના ક્રિયા કરતાં વધુ મહત્ત્વની છે, કારણ કે લોગિન વખતે બે ઇન્સ્ટન્સ દેખાવું એ સ્ટાર્ટઅપ ક્રમની સમસ્યા છે જે પુનરાવર્તિત થશે. એક્ઝિક્યુટેબલ અને તેના નિયંત્રકનું નામ આપતો રેકોર્ડ આગલી વ્યક્તિને તેનું પુનરુત્પાદન કરવા દે છે.

પછી ઇચ્છિત સ્થિતિ ચકાસો: વપરાશકર્તાને જરૂરી સેવા, અને તે જે ખાનગી સંસાધન સુધી પહોંચે છે. એ પાઇપલાઇન ટાળો જે સબસ્ટ્રિંગ શોધે છે અને દરેક મેળને બળપૂર્વક મારે છે, કારણ કે તે ઉપરનું બધું ફેંકી દે છે અને સામાન્ય રીતે બે ઇન્સ્ટન્સ કેમ હતા તેનો પુરાવો નષ્ટ કરે છે. જો પ્રક્રિયા પાછી આવતી રહે, તો શોધ કન્ફિગરેશન કે ક્રમની ખામી છે, અને સુધારો ક્લાઇન્ટના સ્ટાર્ટઅપ વર્તનનો માલિક જ કરી શકે.

સંબંધિત લેખો