{"id":98486,"date":"2025-02-21T19:17:44","date_gmt":"2025-02-21T15:47:44","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/"},"modified":"2025-02-21T19:17:44","modified_gmt":"2025-02-21T15:47:44","slug":"go-panic-and-recover-a-deep-dive-into-error-handling-56be","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/","title":{"rendered":"\u0628\u0647 \u0648\u062d\u0634\u062a \u0628\u0631\u0648\u06cc\u062f \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0646\u06cc\u062f: \u06cc\u06a9 \u0634\u06cc\u0631\u062c\u0647 \u0639\u0645\u06cc\u0642 \u062f\u0631 \u06a9\u0627\u0631 \u0628\u0627 \u062e\u0637\u0627"},"content":{"rendered":"<div data-article-id=\"2291585\" id=\"article-body\">\n<p><\/p>\n<p><strong>Leapcell: \u067e\u0644\u062a \u0641\u0631\u0645 \u0628\u062f\u0648\u0646 \u0633\u0631\u0648\u0631 \u0646\u0633\u0644 \u0628\u0639\u062f\u06cc \u0628\u0631\u0627\u06cc \u0645\u06cc\u0632\u0628\u0627\u0646\u06cc Golang \u060c \u06a9\u0627\u0631\u0647\u0627\u06cc Async \u0648 Redis<\/strong><\/p>\n<p>\u062f\u0631 \u0632\u0628\u0627\u0646 Go \u060c \u062f\u0648 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0627\u063a\u0644\u0628 \u0628\u0647 \u0635\u0648\u0631\u062a \u062c\u0641\u062a \u0638\u0627\u0647\u0631 \u0645\u06cc \u0634\u0648\u0646\u062f &#8211; \u0648\u062d\u0634\u062a \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc. \u0627\u06cc\u0646 \u062f\u0648 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0627\u0632 \u0646\u0632\u062f\u06cc\u06a9 \u0628\u0627 \u062a\u0639\u0648\u06cc\u0642 \u0627\u0631\u062a\u0628\u0627\u0637 \u062f\u0627\u0631\u0646\u062f. \u0622\u0646\u0647\u0627 \u0647\u0631 \u062f\u0648 \u062a\u0648\u0627\u0628\u0639 \u062f\u0627\u062e\u0644\u06cc \u062f\u0631 \u0632\u0628\u0627\u0646 GO \u0647\u0633\u062a\u0646\u062f \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f\u0647\u0627\u06cc \u0645\u06a9\u0645\u0644 \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u0646\u062f.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_84 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Toggle Table of Content\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#I_%D8%B9%D9%85%D9%84%DA%A9%D8%B1%D8%AF%D9%87%D8%A7%DB%8C_%D8%A7%D8%B3%D8%A7%D8%B3%DB%8C_%D9%88%D8%AD%D8%B4%D8%AA_%D9%88_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C\" >I. \u0639\u0645\u0644\u06a9\u0631\u062f\u0647\u0627\u06cc \u0627\u0633\u0627\u0633\u06cc \u0648\u062d\u0634\u062a \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#ii_%D9%BE%D8%AF%DB%8C%D8%AF%D9%87_%D9%87%D9%86%DA%AF%D8%A7%D9%85_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_%D9%88%D8%AD%D8%B4%D8%AA_%D9%88_%D8%A8%D9%87%D8%A8%D9%88%D8%AF%DB%8C\" >ii. \u067e\u062f\u06cc\u062f\u0647 \u0647\u0646\u06af\u0627\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0648\u062d\u0634\u062a \u0648 \u0628\u0647\u0628\u0648\u062f\u06cc<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#i_%D9%88%D8%AD%D8%B4%D8%AA_%D9%81%D9%82%D8%B7_%D8%A8%D8%A7%D8%B9%D8%AB_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%AF%D9%88%D8%B1%D9%88%D8%AA%DB%8C%D9%86_%D9%81%D8%B9%D9%84%DB%8C_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF\" >(i) \u0648\u062d\u0634\u062a \u0641\u0642\u0637 \u0628\u0627\u0639\u062b \u0627\u06cc\u062c\u0627\u062f \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u0641\u0639\u0644\u06cc \u0645\u06cc \u0634\u0648\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#%D8%A8_%D8%A8%D9%87%D8%A8%D9%88%D8%AF%DB%8C_%D9%81%D9%82%D8%B7_%D9%87%D9%86%DA%AF%D8%A7%D9%85%DB%8C_%DA%A9%D9%87_%D8%AF%D8%B1_%D8%AA%D8%B9%D9%88%DB%8C%D9%82_%D9%86%D8%A7%D9%85%DB%8C%D8%AF%D9%87_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF_%D8%8C_%D8%B9%D9%85%D9%84%DB%8C_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF\" >(\u0628) \u0628\u0647\u0628\u0648\u062f\u06cc \u0641\u0642\u0637 \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0646\u0627\u0645\u06cc\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c \u0639\u0645\u0644\u06cc \u0645\u06cc \u0634\u0648\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#iii_%D9%88%D8%AD%D8%B4%D8%AA_%D8%A7%D8%AC%D8%A7%D8%B2%D9%87_%D9%85%DB%8C_%D8%AF%D9%87%D8%AF_%D8%AA%D8%A7_%DA%86%D9%86%D8%AF%DB%8C%D9%86_%D8%AA%D9%85%D8%A7%D8%B3_%D8%AA%D9%88_%D8%AF%D8%B1_%D8%AA%D9%88_%D8%AF%D8%B1_%D8%AA%D8%B9%D9%88%DB%8C%D9%82_%D8%A8%DB%8C%D9%81%D8%AA%D8%AF\" >(iii) \u0648\u062d\u0634\u062a \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u0686\u0646\u062f\u06cc\u0646 \u062a\u0645\u0627\u0633 \u062a\u0648 \u062f\u0631 \u062a\u0648 \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0628\u06cc\u0641\u062a\u062f<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#iii_%D8%B3%D8%A7%D8%AE%D8%AA%D8%A7%D8%B1_%D8%AF%D8%A7%D8%AF%D9%87_%D9%88%D8%AD%D8%B4%D8%AA\" >iii \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0627\u062f\u0647 \u0648\u062d\u0634\u062a<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#IV_%D8%A7%D8%B5%D9%84_%D8%B3%D9%82%D9%88%D8%B7_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87\" >IV \u0627\u0635\u0644 \u0633\u0642\u0648\u0637 \u0628\u0631\u0646\u0627\u0645\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#V_%D8%A7%D8%B5%D9%84_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81\" >V. \u0627\u0635\u0644 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062a\u0635\u0627\u062f\u0641<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#vi_%D8%AE%D9%84%D8%A7%D8%B5%D9%87\" >vi \u062e\u0644\u0627\u0635\u0647<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#1_%D9%BE%D8%B4%D8%AA%DB%8C%D8%A8%D8%A7%D9%86%DB%8C_%DA%86%D9%86%D8%AF_%D8%B2%D8%A8%D8%A7%D9%86%D9%87\" >1. \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0686\u0646\u062f \u0632\u0628\u0627\u0646\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#5_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D9%87%D8%A7%DB%8C_%D9%86%D8%A7%D9%85%D8%AD%D8%AF%D9%88%D8%AF_%D8%B1%D8%A7_%D8%A8%D9%87_%D8%B5%D9%88%D8%B1%D8%AA_%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86_%D9%85%D8%B3%D8%AA%D9%82%D8%B1_%DA%A9%D9%86%DB%8C%D8%AF\" >5. \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u0646\u0627\u0645\u062d\u062f\u0648\u062f \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u0631\u0627\u06cc\u06af\u0627\u0646 \u0645\u0633\u062a\u0642\u0631 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#3_%D8%B1%D8%A7%D9%86%D8%AF%D9%85%D8%A7%D9%86_%D9%87%D8%B2%DB%8C%D9%86%D9%87_%D8%A8%DB%8C_%D9%86%D8%B8%DB%8C%D8%B1\" >3. \u0631\u0627\u0646\u062f\u0645\u0627\u0646 \u0647\u0632\u06cc\u0646\u0647 \u0628\u06cc \u0646\u0638\u06cc\u0631<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#4_%D8%AA%D8%AC%D8%B1%D8%A8%D9%87_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D8%AF%D9%87%D9%86%D8%AF%D9%87_%D8%B3%D8%A7%D8%AF%D9%87\" >4. \u062a\u062c\u0631\u0628\u0647 \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u0647 \u0633\u0627\u062f\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/go-panic-and-recover-a-deep-dive-into-error-handling-56be\/#5_%D9%85%D9%82%DB%8C%D8%A7%D8%B3_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C_%D8%A8%DB%8C_%D8%AF%D8%B1%D8%AF%D8%B3%D8%B1_%D9%88_%D8%B9%D9%85%D9%84%DA%A9%D8%B1%D8%AF_%D8%A8%D8%A7%D9%84%D8%A7\" >5. \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0628\u06cc \u062f\u0631\u062f\u0633\u0631 \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627\u0644\u0627<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"I_%D8%B9%D9%85%D9%84%DA%A9%D8%B1%D8%AF%D9%87%D8%A7%DB%8C_%D8%A7%D8%B3%D8%A7%D8%B3%DB%8C_%D9%88%D8%AD%D8%B4%D8%AA_%D9%88_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C\"><\/span>\n<p>  I. \u0639\u0645\u0644\u06a9\u0631\u062f\u0647\u0627\u06cc \u0627\u0633\u0627\u0633\u06cc \u0648\u062d\u0634\u062a \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<ul>\n<li>\n<strong>\u0648\u062d\u0634\u062a<\/strong>: \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062c\u0631\u06cc\u0627\u0646 \u06a9\u0646\u062a\u0631\u0644 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u062a\u063a\u06cc\u06cc\u0631 \u062f\u0647\u062f. \u067e\u0633 \u0627\u0632 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0648\u062d\u0634\u062a \u060c \u06a9\u062f \u0628\u0627\u0642\u06cc\u0645\u0627\u0646\u062f\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f \u0641\u0639\u0644\u06cc \u0628\u0644\u0627\u0641\u0627\u0635\u0644\u0647 \u0627\u0632 \u0627\u062c\u0631\u0627\u06cc \u0622\u0646 \u0645\u062a\u0648\u0642\u0641 \u0645\u06cc \u0634\u0648\u062f \u0648 \u062a\u0639\u0648\u06cc\u0642 \u062a\u0645\u0627\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 \u0628\u0647 \u0635\u0648\u0631\u062a \u0628\u0627\u0632\u06af\u0634\u062a\u06cc \u062f\u0631 \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u0641\u0639\u0644\u06cc \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>\u0628\u0647\u0628\u0648\u062f\u06cc \u067e\u06cc\u062f\u0627 \u06a9\u0631\u062f\u0646<\/strong>: \u0627\u06cc\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062c\u0644\u0648\u06cc \u062a\u0635\u0627\u062f\u0641 \u0628\u0631\u0646\u0627\u0645\u0647 \u0646\u0627\u0634\u06cc \u0627\u0632 \u0648\u062d\u0634\u062a \u0631\u0627 \u0628\u06af\u06cc\u0631\u062f. \u0627\u06cc\u0646 \u062a\u0627\u0628\u0639\u06cc \u0627\u0633\u062a \u06a9\u0647 \u0641\u0642\u0637 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0639\u0645\u0644 \u06a9\u0646\u062f. \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0622\u0646 \u062f\u0631 \u062f\u0627\u0645\u0646\u0647 \u0647\u0627\u06cc \u062f\u06cc\u06af\u0631 \u0647\u06cc\u0686 \u062a\u0627\u062b\u06cc\u0631\u06cc \u0646\u062e\u0648\u0627\u0647\u062f \u062f\u0627\u0634\u062a.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"ii_%D9%BE%D8%AF%DB%8C%D8%AF%D9%87_%D9%87%D9%86%DA%AF%D8%A7%D9%85_%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87_%D8%A7%D8%B2_%D9%88%D8%AD%D8%B4%D8%AA_%D9%88_%D8%A8%D9%87%D8%A8%D9%88%D8%AF%DB%8C\"><\/span>\n<p>  ii. \u067e\u062f\u06cc\u062f\u0647 \u0647\u0646\u06af\u0627\u0645 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0648\u062d\u0634\u062a \u0648 \u0628\u0647\u0628\u0648\u062f\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"i_%D9%88%D8%AD%D8%B4%D8%AA_%D9%81%D9%82%D8%B7_%D8%A8%D8%A7%D8%B9%D8%AB_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DA%AF%D9%88%D8%B1%D9%88%D8%AA%DB%8C%D9%86_%D9%81%D8%B9%D9%84%DB%8C_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF\"><\/span>\n<p>  (i) \u0648\u062d\u0634\u062a \u0641\u0642\u0637 \u0628\u0627\u0639\u062b \u0627\u06cc\u062c\u0627\u062f \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u0641\u0639\u0644\u06cc \u0645\u06cc \u0634\u0648\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06a9\u062f \u0632\u06cc\u0631 \u0627\u06cc\u0646 \u067e\u062f\u06cc\u062f\u0647 \u0631\u0627 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">main<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">defer<\/span> <span class=\"nb\">println<\/span><span class=\"p\">(<\/span><span class=\"s\">\"in main\"<\/span><span class=\"p\">)<\/span>\n    <span class=\"k\">go<\/span> <span class=\"k\">func<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n        <span class=\"k\">defer<\/span> <span class=\"nb\">println<\/span><span class=\"p\">(<\/span><span class=\"s\">\"in goroutine\"<\/span><span class=\"p\">)<\/span>\n        <span class=\"nb\">panic<\/span><span class=\"p\">(<\/span><span class=\"s\">\"\"<\/span><span class=\"p\">)<\/span>\n    <span class=\"p\">}()<\/span>\n\n    <span class=\"n\">time<\/span><span class=\"o\">.<\/span><span class=\"n\">Sleep<\/span><span class=\"p\">(<\/span><span class=\"m\">1<\/span> <span class=\"o\">*<\/span> <span class=\"n\">time<\/span><span class=\"o\">.<\/span><span class=\"n\">Second<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0646\u062a\u06cc\u062c\u0647 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>$ go run main.go\nin goroutine\npanic:\n...\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0647\u0646\u06af\u0627\u0645 \u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u06a9\u062f \u060c \u0645\u0634\u062e\u0635 \u0645\u06cc \u0634\u0648\u062f \u06a9\u0647 \u0628\u06cc\u0627\u0646\u06cc\u0647 \u062a\u0639\u0648\u06cc\u0642 \u062f\u0631 \u0639\u0645\u0644\u06a9\u0631\u062f \u0627\u0635\u0644\u06cc \u0627\u062c\u0631\u0627 \u0646\u0645\u06cc \u0634\u0648\u062f \u0648 \u0641\u0642\u0637 \u0645\u0639\u0648\u0642 \u062f\u0631 \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u0641\u0639\u0644\u06cc \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f. \u0627\u0632 \u0622\u0646\u062c\u0627 \u06a9\u0647 Runtime.deferproc \u0645\u0631\u0628\u0648\u0637 \u0628\u0647 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc Defer \u060c \u0639\u0645\u0644\u06a9\u0631\u062f \u062a\u0645\u0627\u0633 \u0645\u0639\u0648\u0642 \u0631\u0627 \u0628\u0627 \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u062a\u0645\u0627\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 \u062f\u0631 \u0622\u0646 \u0642\u0631\u0627\u0631 \u062f\u0627\u0631\u062f \u0645\u0631\u062a\u0628\u0637 \u0645\u06cc \u06a9\u0646\u062f \u060c \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u0648\u0642\u062a\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u062e\u0631\u0627\u0628 \u0645\u06cc \u0634\u0648\u062f \u060c \u0641\u0642\u0637 \u0639\u0645\u0644\u06a9\u0631\u062f \u062a\u0645\u0627\u0633 \u0645\u0639\u0648\u0642 \u0627\u0632 \u06af\u0648\u0631\u0648\u062a\u06cc\u0646 \u0641\u0639\u0644\u06cc \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A8_%D8%A8%D9%87%D8%A8%D9%88%D8%AF%DB%8C_%D9%81%D9%82%D8%B7_%D9%87%D9%86%DA%AF%D8%A7%D9%85%DB%8C_%DA%A9%D9%87_%D8%AF%D8%B1_%D8%AA%D8%B9%D9%88%DB%8C%D9%82_%D9%86%D8%A7%D9%85%DB%8C%D8%AF%D9%87_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF_%D8%8C_%D8%B9%D9%85%D9%84%DB%8C_%D9%85%DB%8C_%D8%B4%D9%88%D8%AF\"><\/span>\n<p>  (\u0628) \u0628\u0647\u0628\u0648\u062f\u06cc \u0641\u0642\u0637 \u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0646\u0627\u0645\u06cc\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c \u0639\u0645\u0644\u06cc \u0645\u06cc \u0634\u0648\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06a9\u062f \u0632\u06cc\u0631 \u0627\u06cc\u0646 \u0648\u06cc\u0698\u06af\u06cc \u0631\u0627 \u0645\u0646\u0639\u06a9\u0633 \u0645\u06cc \u06a9\u0646\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">main<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">defer<\/span> <span class=\"n\">fmt<\/span><span class=\"o\">.<\/span><span class=\"n\">Println<\/span><span class=\"p\">(<\/span><span class=\"s\">\"in main\"<\/span><span class=\"p\">)<\/span>\n    <span class=\"k\">if<\/span> <span class=\"n\">err<\/span> <span class=\"o\">:=<\/span> <span class=\"nb\">recover<\/span><span class=\"p\">();<\/span> <span class=\"n\">err<\/span> <span class=\"o\">!=<\/span> <span class=\"no\">nil<\/span> <span class=\"p\">{<\/span>\n        <span class=\"n\">fmt<\/span><span class=\"o\">.<\/span><span class=\"n\">Println<\/span><span class=\"p\">(<\/span><span class=\"n\">err<\/span><span class=\"p\">)<\/span>\n    <span class=\"p\">}<\/span>\n\n    <span class=\"nb\">panic<\/span><span class=\"p\">(<\/span><span class=\"s\">\"unknown err\"<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0646\u062a\u06cc\u062c\u0647 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>$ go run main.go\nin main\npanic: unknown err\ngoroutine 1 [running]:\nmain.main()\n ...\nexit status 2\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0628\u0627 \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u062f\u0642\u06cc\u0642 \u0627\u06cc\u0646 \u0641\u0631\u0622\u06cc\u0646\u062f \u060c \u0645\u06cc \u062a\u0648\u0627\u0646 \u062a\u0634\u062e\u06cc\u0635 \u062f\u0627\u062f \u06a9\u0647 \u0628\u0647\u0628\u0648\u062f\u06cc \u062a\u0646\u0647\u0627 \u062f\u0631 \u0635\u0648\u0631\u062a \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u067e\u0633 \u0627\u0632 \u0648\u0642\u0648\u0639 \u0648\u062d\u0634\u062a \u060c \u0639\u0645\u0644\u06cc \u0645\u06cc \u0634\u0648\u062f. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644 \u060c \u062f\u0631 \u062c\u0631\u06cc\u0627\u0646 \u06a9\u0646\u062a\u0631\u0644 \u0641\u0648\u0642 \u060c \u0628\u0647\u0628\u0648\u062f\u06cc \u0642\u0628\u0644 \u0627\u0632 \u0648\u062d\u0634\u062a \u062e\u0648\u0627\u0646\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c \u06a9\u0647 \u0634\u0631\u0627\u06cc\u0637 \u0644\u0627\u0632\u0645 \u0628\u0631\u0627\u06cc \u062a\u0623\u062b\u06cc\u0631\u06af\u0630\u0627\u0631\u06cc \u0631\u0627 \u0628\u0631\u0622\u0648\u0631\u062f\u0647 \u0646\u0645\u06cc \u06a9\u0646\u062f. \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u060c \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0627\u06cc\u062f \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0634\u0648\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"iii_%D9%88%D8%AD%D8%B4%D8%AA_%D8%A7%D8%AC%D8%A7%D8%B2%D9%87_%D9%85%DB%8C_%D8%AF%D9%87%D8%AF_%D8%AA%D8%A7_%DA%86%D9%86%D8%AF%DB%8C%D9%86_%D8%AA%D9%85%D8%A7%D8%B3_%D8%AA%D9%88_%D8%AF%D8%B1_%D8%AA%D9%88_%D8%AF%D8%B1_%D8%AA%D8%B9%D9%88%DB%8C%D9%82_%D8%A8%DB%8C%D9%81%D8%AA%D8%AF\"><\/span>\n<p>  (iii) \u0648\u062d\u0634\u062a \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u0686\u0646\u062f\u06cc\u0646 \u062a\u0645\u0627\u0633 \u062a\u0648 \u062f\u0631 \u062a\u0648 \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0628\u06cc\u0641\u062a\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06a9\u062f \u0632\u06cc\u0631 \u0646\u062d\u0648\u0647 \u062a\u0645\u0627\u0633 \u0628\u0627 \u0648\u062d\u0634\u062a \u0631\u0627 \u0686\u0646\u062f\u06cc\u0646 \u0628\u0627\u0631 \u062f\u0631 \u06cc\u06a9 \u0639\u0645\u0644\u06a9\u0631\u062f \u062a\u0639\u0648\u06cc\u0642 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">main<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n    <span class=\"k\">defer<\/span> <span class=\"n\">fmt<\/span><span class=\"o\">.<\/span><span class=\"n\">Println<\/span><span class=\"p\">(<\/span><span class=\"s\">\"in main\"<\/span><span class=\"p\">)<\/span>\n    <span class=\"k\">defer<\/span> <span class=\"k\">func<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n        <span class=\"k\">defer<\/span> <span class=\"k\">func<\/span><span class=\"p\">()<\/span> <span class=\"p\">{<\/span>\n            <span class=\"nb\">panic<\/span><span class=\"p\">(<\/span><span class=\"s\">\"panic again and again\"<\/span><span class=\"p\">)<\/span>\n        <span class=\"p\">}()<\/span>\n        <span class=\"nb\">panic<\/span><span class=\"p\">(<\/span><span class=\"s\">\"panic again\"<\/span><span class=\"p\">)<\/span>\n    <span class=\"p\">}()<\/span>\n\n    <span class=\"nb\">panic<\/span><span class=\"p\">(<\/span><span class=\"s\">\"panic once\"<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0646\u062a\u06cc\u062c\u0647 \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u0628\u0647 \u0634\u0631\u062d \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>$ go run main.go\nin main\npanic: panic once\n  panic: panic again\n  panic: panic again and again\ngoroutine 1 [running]:\n...\nexit status 2\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u0632 \u0646\u062a\u06cc\u062c\u0647 \u062e\u0631\u0648\u062c\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0641\u0648\u0642 \u060c \u0645\u06cc \u062a\u0648\u0627\u0646 \u0645\u0634\u062e\u0635 \u06a9\u0631\u062f \u06a9\u0647 \u062a\u0645\u0627\u0633 \u0647\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0628\u0631\u0627\u06cc \u0648\u062d\u0634\u062a \u062f\u0631 \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0631 \u0627\u062c\u0631\u0627\u06cc \u0639\u0627\u062f\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f Defer \u062a\u0623\u062b\u06cc\u0631 \u0646\u0645\u06cc \u06af\u0630\u0627\u0631\u062f. \u0628\u0646\u0627\u0628\u0631\u0627\u06cc\u0646 \u060c \u0628\u0647 \u0637\u0648\u0631 \u06a9\u0644\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062a\u0639\u0648\u06cc\u0642 \u0628\u0631\u0627\u06cc \u06a9\u0627\u0631 \u0646\u0647\u0627\u06cc\u06cc \u0628\u06cc \u062e\u0637\u0631 \u0627\u0633\u062a.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"iii_%D8%B3%D8%A7%D8%AE%D8%AA%D8%A7%D8%B1_%D8%AF%D8%A7%D8%AF%D9%87_%D9%88%D8%AD%D8%B4%D8%AA\"><\/span>\n<p>  iii \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0627\u062f\u0647 \u0648\u062d\u0634\u062a<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0648\u062d\u0634\u062a \u062f\u0631 \u06a9\u062f \u0645\u0646\u0628\u0639 \u0632\u0628\u0627\u0646 GO \u062a\u0648\u0633\u0637 \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0627\u062f\u0647 Runtime._Panic \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a. \u0647\u0631 \u0628\u0627\u0631 \u06a9\u0647 \u0648\u062d\u0634\u062a \u062e\u0648\u0627\u0646\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0627\u062f\u0647 \u0627\u06cc \u0645\u0627\u0646\u0646\u062f \u0645\u0648\u0627\u0631\u062f \u0632\u06cc\u0631 \u0628\u0631\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0645\u0631\u0628\u0648\u0637\u0647 \u0627\u06cc\u062c\u0627\u062f \u0645\u06cc \u0634\u0648\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">type<\/span> <span class=\"n\">_panic<\/span> <span class=\"k\">struct<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">argp<\/span>      <span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span>\n    <span class=\"n\">arg<\/span>       <span class=\"k\">interface<\/span><span class=\"p\">{}<\/span>\n    <span class=\"n\">link<\/span>      <span class=\"o\">*<\/span><span class=\"n\">_panic<\/span>\n    <span class=\"n\">recovered<\/span> <span class=\"kt\">bool<\/span>\n    <span class=\"n\">aborted<\/span>   <span class=\"kt\">bool<\/span>\n    <span class=\"n\">pc<\/span>        <span class=\"kt\">uintptr<\/span>\n    <span class=\"n\">sp<\/span>        <span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span>\n    <span class=\"n\">goexit<\/span>    <span class=\"kt\">bool<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<ul>\n<li>\n<strong>argp<\/strong>: \u0627\u06cc\u0646 \u06cc\u06a9 \u0627\u0634\u0627\u0631\u0647 \u06af\u0631 \u0628\u0647 \u067e\u0627\u0631\u0627\u0645\u062a\u0631 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0647 \u062a\u0639\u0648\u06cc\u0642 \u0645\u06cc \u0627\u0641\u062a\u062f.<\/li>\n<li>\n<strong>\u062c\u0646\u062c\u0627\u0644<\/strong>: \u0627\u06cc\u0646 \u067e\u0627\u0631\u0627\u0645\u062a\u0631 \u0645\u0646\u062a\u0642\u0644 \u0634\u062f\u0647 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0648\u062d\u0634\u062a \u0627\u0633\u062a.<\/li>\n<li>\n<strong>\u067e\u06cc\u0648\u0646\u062f<\/strong>: \u0627\u06cc\u0646 \u0628\u0647 \u0633\u0627\u062e\u062a\u0627\u0631 \u0642\u0628\u0644\u06cc Runtime._Panic \u0627\u0634\u0627\u0631\u0647 \u062f\u0627\u0631\u062f.<\/li>\n<li>\n<strong>\u0628\u0647\u0628\u0648\u062f \u06cc\u0627\u0641\u062a\u0647<\/strong>: \u0627\u06cc\u0646 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0641\u0639\u0644\u06cc ._ \u0627\u0633\u067e\u0627\u0646\u06cc\u06a9 \u0628\u0627 \u0628\u0647\u0628\u0648\u062f\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u062f\u0647 \u0627\u0633\u062a.<\/li>\n<li>\n<strong>\u0633\u0642\u0637 \u0634\u062f\u0647<\/strong>: \u0627\u06cc\u0646 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u0622\u06cc\u0627 \u0648\u062d\u0634\u062a \u0641\u0639\u0644\u06cc \u0628\u0647 \u0632\u0648\u0631 \u062e\u0627\u062a\u0645\u0647 \u06cc\u0627\u0641\u062a\u0647 \u0627\u0633\u062a \u06cc\u0627 \u062e\u06cc\u0631.<\/li>\n<\/ul>\n<p>\u0627\u0632 \u0642\u0633\u0645\u062a Link \u062f\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0627\u062f\u0647 \u060c \u0645\u06cc \u062a\u0648\u0627\u0646 \u0646\u062a\u06cc\u062c\u0647 \u06af\u0631\u0641\u062a \u06a9\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f \u0648\u062d\u0634\u062a \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0686\u0646\u062f\u06cc\u0646 \u0628\u0627\u0631 \u0628\u0647 \u0637\u0648\u0631 \u0645\u062f\u0627\u0648\u0645 \u0646\u0627\u0645\u06cc\u062f \u0648 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0627\u0632 \u0637\u0631\u06cc\u0642 \u067e\u06cc\u0648\u0646\u062f \u06cc\u06a9 \u0644\u06cc\u0633\u062a \u0645\u0631\u062a\u0628\u0637 \u062a\u0634\u06a9\u06cc\u0644 \u062f\u0647\u0646\u062f.<\/p>\n<p>Three Fields PC \u060c SP \u0648 Goexit \u062f\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u0647\u0645\u06af\u06cc \u0628\u0631\u0627\u06cc \u0631\u0641\u0639 \u0645\u0634\u06a9\u0644\u0627\u062a \u0646\u0627\u0634\u06cc \u0627\u0632 Runtime.goexit \u0645\u0639\u0631\u0641\u06cc \u0634\u062f\u0647 \u0627\u0646\u062f. Runtime.GoExit \u0641\u0642\u0637 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0647 Goroutine \u067e\u0627\u06cc\u0627\u0646 \u062f\u0647\u062f \u06a9\u0647 \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0631\u0627 \u0628\u062f\u0648\u0646 \u062a\u0623\u062b\u06cc\u0631 \u0633\u0627\u06cc\u0631 \u06af\u0648\u0631\u0648\u0647\u0627 \u0645\u06cc \u0646\u0627\u0645\u062f. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644 \u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627 \u0648\u062d\u0634\u062a \u0644\u063a\u0648 \u0645\u06cc \u0634\u0648\u062f \u0648 \u062f\u0631 \u062a\u0639\u0648\u06cc\u0642 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u06cc\u0627\u0628\u062f. \u0645\u0639\u0631\u0641\u06cc \u0627\u06cc\u0646 \u0633\u0647 \u0632\u0645\u06cc\u0646\u0647 \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0627\u0632 \u0639\u0645\u0644\u06a9\u0631\u062f \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0627\u0633\u062a.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"IV_%D8%A7%D8%B5%D9%84_%D8%B3%D9%82%D9%88%D8%B7_%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87\"><\/span>\n<p>  IV \u0627\u0635\u0644 \u0633\u0642\u0648\u0637 \u0628\u0631\u0646\u0627\u0645\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06a9\u0627\u0645\u067e\u0627\u06cc\u0644\u0631 \u0648\u062d\u0634\u062a \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0631\u0627 \u0628\u0647 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627. gopanic \u062a\u0628\u062f\u06cc\u0644 \u0645\u06cc \u06a9\u0646\u062f. \u0641\u0631\u0622\u06cc\u0646\u062f \u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0634\u0627\u0645\u0644 \u0645\u0631\u0627\u062d\u0644 \u0632\u06cc\u0631 \u0627\u0633\u062a:<\/p>\n<ol>\n<li>\u06cc\u06a9 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f.<\/li>\n<li>\u0628\u0647 \u0637\u0648\u0631 \u0645\u062f\u0627\u0648\u0645 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0631\u0627 \u0628\u062f\u0633\u062a \u0622\u0648\u0631\u06cc\u062f ._\u062f\u0641\u0631 \u0627\u0632 \u0644\u06cc\u0633\u062a _defer \u067e\u06cc\u0648\u0646\u062f \u0634\u062f\u0647 \u0627\u0632 goroutine \u0641\u0639\u0644\u06cc \u062f\u0631 \u06cc\u06a9 \u062d\u0644\u0642\u0647 \u0648 \u062a\u0645\u0627\u0633 \u0628\u0627 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627.<\/li>\n<li>\u0628\u0631\u0627\u06cc \u0633\u0642\u0637 \u062c\u0646\u06cc\u0646 \u06a9\u0644 \u0628\u0631\u0646\u0627\u0645\u0647 \u060c \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0631\u0627 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u06a9\u0646\u06cc\u062f.\n<\/li>\n<\/ol>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">gopanic<\/span><span class=\"p\">(<\/span><span class=\"n\">e<\/span> <span class=\"k\">interface<\/span><span class=\"p\">{})<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">gp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">getg<\/span><span class=\"p\">()<\/span>\n    <span class=\"o\">...<\/span>\n    <span class=\"k\">var<\/span> <span class=\"n\">p<\/span> <span class=\"n\">_panic<\/span>\n    <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">arg<\/span> <span class=\"o\">=<\/span> <span class=\"n\">e<\/span>\n    <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">link<\/span> <span class=\"o\">=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span>\n    <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">=<\/span> <span class=\"p\">(<\/span><span class=\"o\">*<\/span><span class=\"n\">_panic<\/span><span class=\"p\">)(<\/span><span class=\"n\">noescape<\/span><span class=\"p\">(<\/span><span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span><span class=\"p\">(<\/span><span class=\"o\">&amp;<\/span><span class=\"n\">p<\/span><span class=\"p\">)))<\/span>\n\n    <span class=\"k\">for<\/span> <span class=\"p\">{<\/span>\n        <span class=\"n\">d<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_defer<\/span>\n        <span class=\"k\">if<\/span> <span class=\"n\">d<\/span> <span class=\"o\">==<\/span> <span class=\"no\">nil<\/span> <span class=\"p\">{<\/span>\n            <span class=\"k\">break<\/span>\n        <span class=\"p\">}<\/span>\n\n        <span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">=<\/span> <span class=\"p\">(<\/span><span class=\"o\">*<\/span><span class=\"n\">_panic<\/span><span class=\"p\">)(<\/span><span class=\"n\">noescape<\/span><span class=\"p\">(<\/span><span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span><span class=\"p\">(<\/span><span class=\"o\">&amp;<\/span><span class=\"n\">p<\/span><span class=\"p\">)))<\/span>\n\n        <span class=\"n\">reflectcall<\/span><span class=\"p\">(<\/span><span class=\"no\">nil<\/span><span class=\"p\">,<\/span> <span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">fn<\/span><span class=\"p\">),<\/span> <span class=\"n\">deferArgs<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"p\">),<\/span> <span class=\"kt\">uint32<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">siz<\/span><span class=\"p\">),<\/span> <span class=\"kt\">uint32<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">siz<\/span><span class=\"p\">))<\/span>\n\n        <span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">=<\/span> <span class=\"no\">nil<\/span>\n        <span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">fn<\/span> <span class=\"o\">=<\/span> <span class=\"no\">nil<\/span>\n        <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_defer<\/span> <span class=\"o\">=<\/span> <span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">link<\/span>\n\n        <span class=\"n\">freedefer<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"p\">)<\/span>\n        <span class=\"k\">if<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">recovered<\/span> <span class=\"p\">{<\/span>\n            <span class=\"o\">...<\/span>\n        <span class=\"p\">}<\/span>\n    <span class=\"p\">}<\/span>\n\n    <span class=\"n\">fatalpanic<\/span><span class=\"p\">(<\/span><span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span><span class=\"p\">)<\/span>\n    <span class=\"o\">*<\/span><span class=\"p\">(<\/span><span class=\"o\">*<\/span><span class=\"kt\">int<\/span><span class=\"p\">)(<\/span><span class=\"no\">nil<\/span><span class=\"p\">)<\/span> <span class=\"o\">=<\/span> <span class=\"m\">0<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0644\u0627\u0632\u0645 \u0628\u0647 \u0630\u06a9\u0631 \u0627\u0633\u062a \u06a9\u0647 \u0633\u0647 \u0628\u062e\u0634 \u0646\u0633\u0628\u062a\u0627\u064b \u0645\u0647\u0645 \u06a9\u062f \u062f\u0631 \u0639\u0645\u0644\u06a9\u0631\u062f \u0641\u0648\u0642 \u062d\u0630\u0641 \u0634\u062f\u0647 \u0627\u0646\u062f:<\/p>\n<ol>\n<li>\u06a9\u062f \u0645\u0648\u062c\u0648\u062f \u062f\u0631 \u0634\u0627\u062e\u0647 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0631\u0646\u0627\u0645\u0647.<\/li>\n<li>\u06a9\u062f \u0628\u0631\u0627\u06cc \u0628\u0647\u06cc\u0646\u0647 \u0633\u0627\u0632\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u0639\u0648\u0642 \u0627\u0632 \u0637\u0631\u06cc\u0642 Inlining.<\/li>\n<li>\u06a9\u062f \u0628\u0631\u0627\u06cc \u0631\u0641\u0639 \u0648\u0636\u0639\u06cc\u062a \u063a\u06cc\u0631 \u0637\u0628\u06cc\u0639\u06cc \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627. GOEXIT.<\/li>\n<\/ol>\n<p>\u062f\u0631 \u0646\u0633\u062e\u0647 1.14 \u060c \u0632\u0628\u0627\u0646 GO \u062f\u0631\u06af\u06cc\u0631\u06cc \u0628\u06cc\u0646 \u0648\u062d\u0634\u062a \u0628\u0627\u0632\u06af\u0634\u062a\u06cc \u0648 \u0628\u0647\u0628\u0648\u062f\u06cc \u0648 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0631\u0627 \u062d\u0644 \u06a9\u0631\u062f. \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0627\u0631\u0633\u0627\u0644 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627: \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u062d\u0627\u0635\u0644 \u06a9\u0646\u06cc\u062f \u06a9\u0647 GoExit \u0646\u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0628\u0627 \u0648\u062d\u0634\u062a \u0628\u0627\u0632\u06af\u0634\u062a\u06cc\/\u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0633\u0642\u0637 \u0634\u0648\u062f.<\/p>\n<p>Runtime.Fatalpanic \u06cc\u06a9 \u062a\u0635\u0627\u062f\u0641 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0642\u0627\u0628\u0644 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0646\u06cc\u0633\u062a. \u0642\u0628\u0644 \u0627\u0632 \u0633\u0642\u0637 \u062c\u0646\u06cc\u0646 \u060c \u062a\u0645\u0627\u0645 \u067e\u06cc\u0627\u0645 \u0647\u0627\u06cc \u0648\u062d\u0634\u062a \u0648 \u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0645\u0646\u062a\u0642\u0644 \u0634\u062f\u0647 \u062f\u0631 \u0637\u0648\u0644 \u062a\u0645\u0627\u0633 \u0627\u0632 \u0637\u0631\u06cc\u0642 Runtime.printpanics \u0631\u0627 \u0686\u0627\u067e \u0645\u06cc \u06a9\u0646\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">fatalpanic<\/span><span class=\"p\">(<\/span><span class=\"n\">msgs<\/span> <span class=\"o\">*<\/span><span class=\"n\">_panic<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">pc<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">getcallerpc<\/span><span class=\"p\">()<\/span>\n    <span class=\"n\">sp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">getcallersp<\/span><span class=\"p\">()<\/span>\n    <span class=\"n\">gp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">getg<\/span><span class=\"p\">()<\/span>\n\n    <span class=\"k\">if<\/span> <span class=\"n\">startpanic_m<\/span><span class=\"p\">()<\/span> <span class=\"o\">&amp;&amp;<\/span> <span class=\"n\">msgs<\/span> <span class=\"o\">!=<\/span> <span class=\"no\">nil<\/span> <span class=\"p\">{<\/span>\n        <span class=\"n\">atomic<\/span><span class=\"o\">.<\/span><span class=\"n\">Xadd<\/span><span class=\"p\">(<\/span><span class=\"o\">&amp;<\/span><span class=\"n\">runningPanicDefers<\/span><span class=\"p\">,<\/span> <span class=\"o\">-<\/span><span class=\"m\">1<\/span><span class=\"p\">)<\/span>\n        <span class=\"n\">printpanics<\/span><span class=\"p\">(<\/span><span class=\"n\">msgs<\/span><span class=\"p\">)<\/span>\n    <span class=\"p\">}<\/span>\n    <span class=\"k\">if<\/span> <span class=\"n\">dopanic_m<\/span><span class=\"p\">(<\/span><span class=\"n\">gp<\/span><span class=\"p\">,<\/span> <span class=\"n\">pc<\/span><span class=\"p\">,<\/span> <span class=\"n\">sp<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n        <span class=\"n\">crash<\/span><span class=\"p\">()<\/span>\n    <span class=\"p\">}<\/span>\n\n    <span class=\"n\">exit<\/span><span class=\"p\">(<\/span><span class=\"m\">2<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u067e\u0633 \u0627\u0632 \u0686\u0627\u067e \u067e\u06cc\u0627\u0645 CRASC \u060c \u0628\u0631\u0627\u06cc \u062e\u0631\u0648\u062c \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0641\u0639\u0644\u06cc \u0648 \u0628\u0627\u0632\u06af\u0634\u062a \u06a9\u062f \u062e\u0637\u0627 \u060c \u0628\u0627 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u062a\u0645\u0627\u0633 \u0645\u06cc \u06af\u06cc\u0631\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"V_%D8%A7%D8%B5%D9%84_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C_%D8%AA%D8%B5%D8%A7%D8%AF%D9%81\"><\/span>\n<p>  V. \u0627\u0635\u0644 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062a\u0635\u0627\u062f\u0641<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u06a9\u0627\u0645\u067e\u0627\u06cc\u0644\u0631 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0631\u0627 \u0628\u0647 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u062a\u0628\u062f\u06cc\u0644 \u0645\u06cc \u06a9\u0646\u062f. gorecover:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">gorecover<\/span><span class=\"p\">(<\/span><span class=\"n\">argp<\/span> <span class=\"kt\">uintptr<\/span><span class=\"p\">)<\/span> <span class=\"k\">interface<\/span><span class=\"p\">{}<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">gp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">getg<\/span><span class=\"p\">()<\/span>\n    <span class=\"n\">p<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span>\n    <span class=\"k\">if<\/span> <span class=\"n\">p<\/span> <span class=\"o\">!=<\/span> <span class=\"no\">nil<\/span> <span class=\"o\">&amp;&amp;!<\/span><span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">recovered<\/span> <span class=\"o\">&amp;&amp;<\/span> <span class=\"n\">argp<\/span> <span class=\"o\">==<\/span> <span class=\"kt\">uintptr<\/span><span class=\"p\">(<\/span><span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">argp<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n        <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">recovered<\/span> <span class=\"o\">=<\/span> <span class=\"no\">true<\/span>\n        <span class=\"k\">return<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">arg<\/span>\n    <span class=\"p\">}<\/span>\n    <span class=\"k\">return<\/span> <span class=\"no\">nil<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u062c\u0631\u0627\u06cc \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0633\u06cc\u0627\u0631 \u0633\u0627\u062f\u0647 \u0627\u0633\u062a. \u0627\u06af\u0631 Goroutine \u0641\u0639\u0644\u06cc \u0648\u062d\u0634\u062a \u0646\u0627\u0645\u06cc\u062f\u0647 \u0646\u0634\u062f\u0647 \u0628\u0627\u0634\u062f \u060c \u0627\u06cc\u0646 \u0639\u0645\u0644\u06a9\u0631\u062f \u0645\u0633\u062a\u0642\u06cc\u0645\u0627\u064b \u0635\u0641\u0631 \u0631\u0627 \u0628\u0631\u0645\u06cc \u06af\u0631\u062f\u0627\u0646\u062f \u060c \u0628\u0647 \u0647\u0645\u06cc\u0646 \u062f\u0644\u06cc\u0644 \u0627\u0633\u062a \u06a9\u0647 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u062a\u0635\u0627\u062f\u0641 \u062f\u0631 \u0647\u0646\u06af\u0627\u0645 \u0646\u0627\u0645\u0634\u062e\u0635 \u062f\u0631 \u063a\u06cc\u0631 \u0627\u0639\u062f\u0627\u0645 \u0634\u06a9\u0633\u062a \u0645\u06cc \u062e\u0648\u0631\u062f. \u062f\u0631 \u0634\u0631\u0627\u06cc\u0637 \u0639\u0627\u062f\u06cc \u060c \u0632\u0645\u06cc\u0646\u0647 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u062f\u0647 \u0627\u0632 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0631\u0627 \u0627\u0635\u0644\u0627\u062d \u0645\u06cc \u06a9\u0646\u062f ._ \u0627\u0633\u067e\u0627\u0646\u06cc\u06a9 \u060c \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u062a\u0648\u0633\u0637 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">gopanic<\/span><span class=\"p\">(<\/span><span class=\"n\">e<\/span> <span class=\"k\">interface<\/span><span class=\"p\">{})<\/span> <span class=\"p\">{<\/span>\n    <span class=\"o\">...<\/span>\n\n    <span class=\"k\">for<\/span> <span class=\"p\">{<\/span>\n        <span class=\"c\">\/\/ Execute the deferred call function, which may set p.recovered = true<\/span>\n        <span class=\"o\">...<\/span>\n\n        <span class=\"n\">pc<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">pc<\/span>\n        <span class=\"n\">sp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">unsafe<\/span><span class=\"o\">.<\/span><span class=\"n\">Pointer<\/span><span class=\"p\">(<\/span><span class=\"n\">d<\/span><span class=\"o\">.<\/span><span class=\"n\">sp<\/span><span class=\"p\">)<\/span>\n\n        <span class=\"o\">...<\/span>\n        <span class=\"k\">if<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">recovered<\/span> <span class=\"p\">{<\/span>\n            <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">=<\/span> <span class=\"n\">p<\/span><span class=\"o\">.<\/span><span class=\"n\">link<\/span>\n            <span class=\"k\">for<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">!=<\/span> <span class=\"no\">nil<\/span> <span class=\"o\">&amp;&amp;<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span><span class=\"o\">.<\/span><span class=\"n\">aborted<\/span> <span class=\"p\">{<\/span>\n                <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span><span class=\"o\">.<\/span><span class=\"n\">link<\/span>\n            <span class=\"p\">}<\/span>\n            <span class=\"k\">if<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">_panic<\/span> <span class=\"o\">==<\/span> <span class=\"no\">nil<\/span> <span class=\"p\">{<\/span>\n                <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sig<\/span> <span class=\"o\">=<\/span> <span class=\"m\">0<\/span>\n            <span class=\"p\">}<\/span>\n            <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sigcode0<\/span> <span class=\"o\">=<\/span> <span class=\"kt\">uintptr<\/span><span class=\"p\">(<\/span><span class=\"n\">sp<\/span><span class=\"p\">)<\/span>\n            <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sigcode1<\/span> <span class=\"o\">=<\/span> <span class=\"n\">pc<\/span>\n            <span class=\"n\">mcall<\/span><span class=\"p\">(<\/span><span class=\"n\">recovery<\/span><span class=\"p\">)<\/span>\n            <span class=\"n\">throw<\/span><span class=\"p\">(<\/span><span class=\"s\">\"recovery failed\"<\/span><span class=\"p\">)<\/span>\n        <span class=\"p\">}<\/span>\n    <span class=\"p\">}<\/span>\n    <span class=\"o\">...<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u06a9\u062f \u0641\u0648\u0642 \u0628\u0647\u06cc\u0646\u0647 \u0633\u0627\u0632\u06cc \u0645\u062a\u0646\u0627\u0642\u0636 \u0627\u0632 \u062a\u0639\u0642\u06cc\u0628 \u0631\u0627 \u062d\u0630\u0641 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u06cc\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 Counter PC \u0648 STACK POINTER SP \u0631\u0627 \u0627\u0632 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f. \u0642\u0628\u0644 \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u060c SP \u060c PC \u0648 \u0645\u0642\u062f\u0627\u0631 \u0628\u0627\u0632\u06af\u0634\u062a \u0639\u0645\u0644\u06a9\u0631\u062f \u0631\u0627 \u0622\u0645\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">recovery<\/span><span class=\"p\">(<\/span><span class=\"n\">gp<\/span> <span class=\"o\">*<\/span><span class=\"n\">g<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n    <span class=\"n\">sp<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sigcode0<\/span>\n    <span class=\"n\">pc<\/span> <span class=\"o\">:=<\/span> <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sigcode1<\/span>\n\n    <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sched<\/span><span class=\"o\">.<\/span><span class=\"n\">sp<\/span> <span class=\"o\">=<\/span> <span class=\"n\">sp<\/span>\n    <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sched<\/span><span class=\"o\">.<\/span><span class=\"n\">pc<\/span> <span class=\"o\">=<\/span> <span class=\"n\">pc<\/span>\n    <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sched<\/span><span class=\"o\">.<\/span><span class=\"n\">lr<\/span> <span class=\"o\">=<\/span> <span class=\"m\">0<\/span>\n    <span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sched<\/span><span class=\"o\">.<\/span><span class=\"n\">ret<\/span> <span class=\"o\">=<\/span> <span class=\"m\">1<\/span>\n    <span class=\"n\">gogo<\/span><span class=\"p\">(<\/span><span class=\"o\">&amp;<\/span><span class=\"n\">gp<\/span><span class=\"o\">.<\/span><span class=\"n\">sched<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0647\u0646\u06af\u0627\u0645\u06cc \u06a9\u0647 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc Defer \u0646\u0627\u0645\u06cc\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c STAP POINTER SP \u0648 \u0628\u0631\u0646\u0627\u0645\u0647 Counter PC \u062f\u0631 \u0632\u0645\u0627\u0646 \u062a\u0645\u0627\u0633 \u0642\u0628\u0644\u0627\u064b \u062f\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 Runtime._defer \u0630\u062e\u06cc\u0631\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a. \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.gogo \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0628\u0647 \u0645\u0648\u0642\u0639\u06cc\u062a\u06cc \u06a9\u0647 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u062a\u0639\u0648\u06cc\u0636 \u0646\u0627\u0645\u06cc\u062f\u0647 \u0645\u06cc \u0634\u0648\u062f \u060c \u0628\u0627\u0632 \u0645\u06cc \u06af\u0631\u062f\u062f.<\/p>\n<p>Runtime.Recovery \u0645\u0642\u062f\u0627\u0631 \u0628\u0627\u0632\u062f\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f \u0631\u0627 \u062f\u0631 \u0637\u06cc \u0641\u0631\u0622\u06cc\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u06cc\u0632\u06cc \u0628\u0647 1 \u062a\u0646\u0638\u06cc\u0645 \u0645\u06cc \u06a9\u0646\u062f. \u0627\u0632 \u0646\u0638\u0631\u0627\u062a Runtime.DeferProc \u060c \u0645\u06cc \u062a\u0648\u0627\u0646 \u062f\u0631\u06cc\u0627\u0641\u062a \u06a9\u0647 \u0648\u0642\u062a\u06cc \u0645\u0642\u062f\u0627\u0631 \u0628\u0627\u0632\u06af\u0634\u062a \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.DeferProc 1 \u0627\u0633\u062a \u060c \u06a9\u062f \u062a\u0648\u0644\u06cc\u062f \u0634\u062f\u0647 \u062a\u0648\u0633\u0637 \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644\u0631 \u0642\u0628\u0644 \u0627\u0632 \u0628\u0627\u0632\u06af\u0634\u062a \u0639\u0645\u0644\u06a9\u0631\u062f \u062a\u0645\u0627\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647 \u0645\u0633\u062a\u0642\u06cc\u0645\u0627\u064b \u0628\u0647 \u0622\u0646 \u0645\u06cc \u067e\u0631\u06cc\u062f \u0648 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f. DeferReturn:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight go\"><code><span class=\"k\">func<\/span> <span class=\"n\">deferproc<\/span><span class=\"p\">(<\/span><span class=\"n\">siz<\/span> <span class=\"kt\">int32<\/span><span class=\"p\">,<\/span> <span class=\"n\">fn<\/span> <span class=\"o\">*<\/span><span class=\"n\">funcval<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n    <span class=\"o\">...<\/span>\n    <span class=\"n\">return0<\/span><span class=\"p\">()<\/span>\n<span class=\"p\">}<\/span>\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0631\u0627 \u0648\u0627\u0631\u062f \u06a9\u0646\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u067e\u0633 \u0627\u0632 \u067e\u0631\u0634 \u0628\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.deferreturn \u060c \u0627\u06cc\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0627\u0632 \u0648\u062d\u0634\u062a \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0634\u062f\u0647 \u0648 \u0645\u0646\u0637\u0642 \u0639\u0627\u062f\u06cc \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f \u060c \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.gorecover \u0647\u0645\u0686\u0646\u06cc\u0646 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u067e\u0627\u0631\u0627\u0645\u062a\u0631 ARG \u0631\u0627 \u0647\u0646\u06af\u0627\u0645 \u062a\u0645\u0627\u0633 \u0628\u0627 \u0648\u062d\u0634\u062a \u0627\u0632 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0628\u0647 \u062f\u0633\u062a \u0622\u0648\u0631\u062f \u0648 \u0622\u0646 \u0631\u0627 \u0628\u0631\u06af\u0631\u062f\u0627\u0646\u062f \u0648 \u0622\u0646 \u0631\u0627 \u0628\u0631\u06af\u0631\u062f\u0627\u0646\u062f. \u0628\u0647 \u062a\u0645\u0627\u0633 \u06af\u06cc\u0631\u0646\u062f\u0647<\/p>\n<h2><span class=\"ez-toc-section\" id=\"vi_%D8%AE%D9%84%D8%A7%D8%B5%D9%87\"><\/span>\n<p>  vi \u062e\u0644\u0627\u0635\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u0631\u0648\u0646\u062f \u0633\u0642\u0648\u0637 \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0633\u06cc\u0627\u0631 \u062f\u0634\u0648\u0627\u0631 \u0627\u0633\u062a \u0648 \u062f\u0631\u06a9 \u06a9\u062f \u0628\u0647 \u062e\u0635\u0648\u0635 \u0622\u0633\u0627\u0646 \u0646\u06cc\u0633\u062a. \u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u062e\u0644\u0627\u0635\u0647 \u0627\u06cc \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0633\u0642\u0648\u0637 \u0648 \u0631\u0648\u0646\u062f \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f:<\/p>\n<ol>\n<li>\u06a9\u0627\u0645\u067e\u0627\u06cc\u0644\u0631 \u0645\u0633\u0626\u0648\u0644 \u06a9\u0627\u0631 \u062a\u0628\u062f\u06cc\u0644 \u06a9\u0644\u0645\u0627\u062a \u06a9\u0644\u06cc\u062f\u06cc \u0627\u0633\u062a. \u0627\u06cc\u0646 \u0648\u062d\u0634\u062a \u0631\u0627 \u062a\u0628\u062f\u06cc\u0644 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0647 \u062a\u0631\u062a\u06cc\u0628 \u0628\u0647 \u062a\u0631\u062a\u06cc\u0628 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f. \u0628\u0647 \u062a\u0631\u062a\u06cc\u0628. gopanic \u0648 runtime.gorecover \u060c \u0645\u0639\u0648\u0642 \u0631\u0627 \u0628\u0647 \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.deferproc \u062a\u0628\u062f\u06cc\u0644 \u0645\u06cc \u06a9\u0646\u062f \u060c \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.deferreturn \u0631\u0627 \u062f\u0631 \u0627\u0646\u062a\u0647\u0627\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f\u06cc \u06a9\u0647 Defer \u0645\u06cc \u0646\u0627\u0645\u062f \u060c \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\u0647\u0646\u06af\u0627\u0645 \u0645\u0648\u0627\u062c\u0647\u0647 \u0628\u0627 \u0631\u0648\u0634 Runtime.gopanic \u062f\u0631 \u0637\u06cc \u0641\u0631\u0622\u06cc\u0646\u062f \u062f\u0631 \u062d\u0627\u0644 \u0627\u062c\u0631\u0627 \u060c \u0633\u0627\u062e\u062a\u0627\u0631 Runtime._defer \u0631\u0627 \u0627\u0632 \u0644\u06cc\u0633\u062a \u0645\u0631\u062a\u0628\u0637 Goroutine \u0628\u0647 \u0637\u0648\u0631 \u067e\u06cc \u062f\u0631 \u067e\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0622\u0646 \u0631\u0627 \u0627\u062c\u0631\u0627 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\u0627\u06af\u0631 Runtime.gorecover \u0647\u0646\u06af\u0627\u0645 \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f \u0627\u062c\u0631\u0627\u06cc \u0645\u0639\u0648\u0642 \u0631\u0648\u0628\u0631\u0648 \u0634\u0648\u062f \u060c _panic.ecoured \u0631\u0627 \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u062f\u0631\u0633\u062a \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u067e\u0627\u0631\u0627\u0645\u062a\u0631 \u0648\u062d\u0634\u062a \u0631\u0627 \u0628\u0627\u0632 \u0645\u06cc \u06af\u0631\u062f\u0627\u0646\u062f.<\/li>\n<li>\u067e\u0633 \u0627\u0632 \u067e\u0627\u06cc\u0627\u0646 \u0627\u06cc\u0646 \u062a\u0645\u0627\u0633 \u060c Runtime.gopanic \u0628\u0631\u0646\u0627\u0645\u0647 Counter PC \u0648 STACK POINTER SP \u0631\u0627 \u0627\u0632 \u0633\u0627\u062e\u062a\u0627\u0631 Run._defer \u062e\u0627\u0631\u062c \u0645\u06cc \u06a9\u0646\u062f \u0648 \u0628\u0631\u0627\u06cc \u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0627 \u0639\u0645\u0644\u06a9\u0631\u062f Runtime.recovery \u062a\u0645\u0627\u0633 \u0645\u06cc \u06af\u06cc\u0631\u062f.<\/li>\n<li>Runtime.Recovery \u0628\u0627 \u062a\u0648\u062c\u0647 \u0628\u0647 \u0631\u0627\u06cc\u0627\u0646\u0647 \u0634\u062e\u0635\u06cc \u0648 SP \u0628\u0647 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0645\u06cc \u0634\u0648\u062f. DeferProc.<\/li>\n<li>\u06a9\u062f \u062a\u0648\u0644\u06cc\u062f \u0634\u062f\u0647 \u0628\u0647 \u0637\u0648\u0631 \u062e\u0648\u062f\u06a9\u0627\u0631 \u062a\u0648\u0633\u0637 \u06a9\u0627\u0645\u067e\u0627\u06cc\u0644\u0631 \u0645\u062a\u0648\u062c\u0647 \u0645\u06cc \u0634\u0648\u062f \u06a9\u0647 \u0645\u0642\u062f\u0627\u0631 \u0628\u0627\u0632\u062f\u0647 Runtime.deferproc 0 \u0646\u06cc\u0633\u062a. \u062f\u0631 \u0627\u06cc\u0646 \u0632\u0645\u0627\u0646 \u060c \u0628\u0647 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0628\u0627\u0632 \u0645\u06cc \u06af\u0631\u062f\u062f. Deferreturn \u0648 \u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u0628\u0647 \u062c\u0631\u06cc\u0627\u0646 \u0627\u062c\u0631\u0627\u06cc \u0639\u0627\u062f\u06cc.<\/li>\n<li>\u0627\u06af\u0631 Runtime.gorecover \u0628\u0627 \u0622\u0646 \u0631\u0648\u0628\u0631\u0648 \u0646\u0634\u0648\u06cc\u062f \u060c \u062a\u0645\u0627\u0645 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0631\u0627 \u0637\u06cc \u0645\u06cc \u06a9\u0646\u062f. \u0628\u0647 \u0646\u0648\u0628\u0647 \u062e\u0648\u062f \u0628\u0647 \u0646\u0648\u0628\u0647 \u062e\u0648\u062f \u060c \u0648 \u062f\u0631 \u0646\u0647\u0627\u06cc\u062a \u0628\u0627 Runtime.fatalpanic \u062a\u0645\u0627\u0633 \u0628\u06af\u06cc\u0631\u06cc\u062f \u062a\u0627 \u0628\u0631\u0646\u0627\u0645\u0647 \u0631\u0627 \u0633\u0642\u0637 \u06a9\u0646\u06cc\u062f \u060c \u067e\u0627\u0631\u0627\u0645\u062a\u0631\u0647\u0627\u06cc \u0648\u062d\u0634\u062a \u0631\u0627 \u0686\u0627\u067e \u06a9\u0646\u06cc\u062f \u0648 \u06a9\u062f \u062e\u0637\u0627 2 \u0631\u0627 \u0628\u0631\u06af\u0631\u062f\u0627\u0646\u06cc\u062f.<\/li>\n<\/ol>\n<p>\u0641\u0631\u0627\u06cc\u0646\u062f \u062a\u062c\u0632\u06cc\u0647 \u0648 \u062a\u062d\u0644\u06cc\u0644 \u0634\u0627\u0645\u0644 \u062f\u0627\u0646\u0634 \u0632\u06cc\u0627\u062f\u06cc \u062f\u0631 \u0633\u0637\u062d \u0627\u0633\u0627\u0633\u06cc \u0632\u0628\u0627\u0646 \u0627\u0633\u062a \u0648 \u06a9\u062f \u0645\u0646\u0628\u0639 \u0646\u06cc\u0632 \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646 \u0646\u0633\u0628\u062a\u0627\u064b \u0645\u0628\u0647\u0645 \u0627\u0633\u062a. \u067e\u0631 \u0627\u0632 \u062c\u0631\u06cc\u0627\u0646 \u06a9\u0646\u062a\u0631\u0644 \u063a\u06cc\u0631 \u0645\u062a\u0639\u0627\u0631\u0641 \u0627\u0633\u062a \u0648 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u067e\u06cc\u0634\u062e\u0648\u0627\u0646 \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0647 \u062c\u0644\u0648 \u0648 \u0639\u0642\u0628 \u0645\u06cc \u067e\u0631\u06cc\u062f. \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644 \u060c \u0647\u0646\u0648\u0632 \u0647\u0645 \u0628\u0631\u0627\u06cc \u062f\u0631\u06a9 \u062c\u0631\u06cc\u0627\u0646 \u0627\u062c\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0641\u06cc\u062f \u0627\u0633\u062a. <\/p>\n<p>\u0633\u0631\u0627\u0646\u062c\u0627\u0645 \u060c \u0645\u0646 \u0645\u06cc \u062e\u0648\u0627\u0647\u0645 \u0645\u0646\u0627\u0633\u0628 \u062a\u0631\u06cc\u0646 \u0628\u0633\u062a\u0631 \u0627\u0633\u062a\u0642\u0631\u0627\u0631 \u0631\u0627 \u062a\u0648\u0635\u06cc\u0647 \u06a9\u0646\u0645: <strong>\u062c\u0647\u0634<\/strong><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F501ivpemrayodfj0a63w.png\" alt=\"\u0634\u0631\u062d \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"181\" title=\"\"><\/p>\n<h3><span class=\"ez-toc-section\" id=\"1_%D9%BE%D8%B4%D8%AA%DB%8C%D8%A8%D8%A7%D9%86%DB%8C_%DA%86%D9%86%D8%AF_%D8%B2%D8%A8%D8%A7%D9%86%D9%87\"><\/span>\n<p>  1. \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0686\u0646\u062f \u0632\u0628\u0627\u0646\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\u0628\u0627 JavaScript \u060c Python \u060c Go \u06cc\u0627 Rust \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u06cc\u062f.\n<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"5_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D9%87%D8%A7%DB%8C_%D9%86%D8%A7%D9%85%D8%AD%D8%AF%D9%88%D8%AF_%D8%B1%D8%A7_%D8%A8%D9%87_%D8%B5%D9%88%D8%B1%D8%AA_%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86_%D9%85%D8%B3%D8%AA%D9%82%D8%B1_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  5. \u067e\u0631\u0648\u0698\u0647 \u0647\u0627\u06cc \u0646\u0627\u0645\u062d\u062f\u0648\u062f \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u0631\u0627\u06cc\u06af\u0627\u0646 \u0645\u0633\u062a\u0642\u0631 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\u0641\u0642\u0637 \u0628\u0631\u0627\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u067e\u0631\u062f\u0627\u062e\u062a \u06a9\u0646\u06cc\u062f &#8211; \u0628\u062f\u0648\u0646 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u060c \u0628\u062f\u0648\u0646 \u0647\u0632\u06cc\u0646\u0647.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"3_%D8%B1%D8%A7%D9%86%D8%AF%D9%85%D8%A7%D9%86_%D9%87%D8%B2%DB%8C%D9%86%D9%87_%D8%A8%DB%8C_%D9%86%D8%B8%DB%8C%D8%B1\"><\/span>\n<p>  3. \u0631\u0627\u0646\u062f\u0645\u0627\u0646 \u0647\u0632\u06cc\u0646\u0647 \u0628\u06cc \u0646\u0638\u06cc\u0631<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\u067e\u0631\u062f\u0627\u062e\u062a \u0628\u0647 \u0639\u0646\u0648\u0627\u0646 \u0634\u0645\u0627 \u0628\u062f\u0648\u0646 \u0647\u06cc\u0686 \u06af\u0648\u0646\u0647 \u0647\u0632\u06cc\u0646\u0647 \u0628\u06cc\u06a9\u0627\u0631.\n<\/li>\n<li>\u0645\u062b\u0627\u0644: 25 \u062f\u0644\u0627\u0631 \u0627\u0632 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0647\u0627\u06cc 6.94M \u062f\u0631 \u0632\u0645\u0627\u0646 \u067e\u0627\u0633\u062e \u0645\u062a\u0648\u0633\u0637 \u200b\u200b60ms \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f.\n<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"4_%D8%AA%D8%AC%D8%B1%D8%A8%D9%87_%D8%AA%D9%88%D8%B3%D8%B9%D9%87_%D8%AF%D9%87%D9%86%D8%AF%D9%87_%D8%B3%D8%A7%D8%AF%D9%87\"><\/span>\n<p>  4. \u062a\u062c\u0631\u0628\u0647 \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u0647 \u0633\u0627\u062f\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>UI \u0628\u0635\u0631\u06cc \u0628\u0631\u0627\u06cc \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0628\u06cc \u062f\u0631\u062f\u0633\u0631.\n<\/li>\n<li>\u062e\u0637\u0648\u0637 \u0644\u0648\u0644\u0647 CI\/CD \u06a9\u0627\u0645\u0644\u0627\u064b \u062e\u0648\u062f\u06a9\u0627\u0631 \u0648 \u0627\u062f\u063a\u0627\u0645 GITOPS.\n<\/li>\n<li>\u0645\u0639\u06cc\u0627\u0631\u0647\u0627\u06cc \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u0648 \u0648\u0631\u0648\u062f \u0628\u0647 \u0633\u06cc\u0633\u062a\u0645 \u0628\u0631\u0627\u06cc \u0628\u06cc\u0646\u0634 \u0647\u0627\u06cc \u0639\u0645\u0644\u06cc.\n<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"5_%D9%85%D9%82%DB%8C%D8%A7%D8%B3_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C_%D8%A8%DB%8C_%D8%AF%D8%B1%D8%AF%D8%B3%D8%B1_%D9%88_%D8%B9%D9%85%D9%84%DA%A9%D8%B1%D8%AF_%D8%A8%D8%A7%D9%84%D8%A7\"><\/span>\n<p>  5. \u0645\u0642\u06cc\u0627\u0633 \u067e\u0630\u06cc\u0631\u06cc \u0628\u06cc \u062f\u0631\u062f\u0633\u0631 \u0648 \u0639\u0645\u0644\u06a9\u0631\u062f \u0628\u0627\u0644\u0627<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\u0645\u0642\u06cc\u0627\u0633 \u062e\u0648\u062f\u06a9\u0627\u0631 \u0628\u0631\u0627\u06cc \u0631\u0633\u06cc\u062f\u06af\u06cc \u0628\u0647 \u0647\u0645\u0632\u0645\u0627\u0646\u06cc \u0628\u0627\u0644\u0627 \u0628\u0627 \u0633\u0647\u0648\u0644\u062a.\n<\/li>\n<li>\u0635\u0641\u0631 \u0633\u0631\u0628\u0627\u0631 \u0639\u0645\u0644\u06cc\u0627\u062a\u06cc &#8211; \u0641\u0642\u0637 \u0631\u0648\u06cc \u0633\u0627\u062e\u062a\u0645\u0627\u0646 \u062a\u0645\u0631\u06a9\u0632 \u06a9\u0646\u06cc\u062f.\n<\/li>\n<\/ul>\n<p><img decoding=\"async\" src=\"https:\/\/media2.dev.to\/dynamic\/image\/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto\/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftw3t90nmmtt2pl6tmkdh.png\" alt=\"\u0634\u0631\u062d \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"187\" title=\"\"><\/p>\n<p>\u062f\u0631 \u0627\u0633\u0646\u0627\u062f \u0628\u06cc\u0634\u062a\u0631 \u06a9\u0627\u0648\u0634 \u06a9\u0646\u06cc\u062f!<\/p>\n<p>\u062a\u0648\u06cc\u06cc\u062a\u0631 Leapcell: https:\/\/x.com\/leapcellhq <\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Leapcell: \u067e\u0644\u062a \u0641\u0631\u0645 \u0628\u062f\u0648\u0646 \u0633\u0631\u0648\u0631 \u0646\u0633\u0644 \u0628\u0639\u062f\u06cc \u0628\u0631\u0627\u06cc \u0645\u06cc\u0632\u0628\u0627\u0646\u06cc Golang \u060c \u06a9\u0627\u0631\u0647\u0627\u06cc Async \u0648 Redis \u062f\u0631 \u0632\u0628\u0627\u0646 Go \u060c \u062f\u0648 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0627\u063a\u0644\u0628 \u0628\u0647 \u0635\u0648\u0631\u062a \u062c\u0641\u062a \u0638\u0627\u0647\u0631 \u0645\u06cc \u0634\u0648\u0646\u062f &#8211; \u0648\u062d\u0634\u062a \u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc. \u0627\u06cc\u0646 \u062f\u0648 \u06a9\u0644\u0645\u0647 \u06a9\u0644\u06cc\u062f\u06cc \u0627\u0632 \u0646\u0632\u062f\u06cc\u06a9 \u0628\u0627 \u062a\u0639\u0648\u06cc\u0642 \u0627\u0631\u062a\u0628\u0627\u0637 \u062f\u0627\u0631\u0646\u062f. \u0622\u0646\u0647\u0627 \u0647\u0631 \u062f\u0648 \u062a\u0648\u0627\u0628\u0639 \u062f\u0627\u062e\u0644\u06cc \u062f\u0631 \u0632\u0628\u0627\u0646 GO \u0647\u0633\u062a\u0646\u062f &hellip;<\/p>\n","protected":false},"author":2,"featured_media":98487,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-98486","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/98486","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=98486"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/98486\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/98487"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=98486"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=98486"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=98486"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}