ÇÁ·Î±×·¡¹Ö
ù ÆäÀÌÁö ·£´ý ±Û ȸ¿ø°¡ÀÔ ·Î±×ÀÎ
ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-23 21:21:16
URL https://te31.com/rgr/view.php?id=study&no=2262 ¸ð¹ÙÀÏ È­¸é
ÄݹéÇÔ¼ö·Î ¸â¹öÇÔ¼ö µî·ÏÇÏ´Â ¹æ¹ý ÀÖ³ª¿ä?

staticÀÌ ¾Æ´Ñ ¸â¹öÇÔ¼ö¸¦ ÄݹéÇÔ¼ö·Î µî·ÏÇؾßÇÕ´Ï´Ù.

±Ùµ¥ ÄݹéÇÔ¼ö´Â stack ¿µ¿ª¿¡ ÀÖ¾î¾ß¸¸ µî·ÏÀÌ µÇ´õ¶ó±¸¿ä.

±×·¸´Ù°í ¸â¹öÇÔ¼ö¸¦ staticÀ¸·Î ¼±¾ðÇÏÀÚ´Ï ¸â¹öº¯¼öµéÀ» ¸ø¾²°í


stackoverflow ¾Ë·ÁÁֱ⸦ Ŭ·¡½º °´Ã¼¸¦ ÄݹéÇÔ¼ö ¹Ù·Î À§¿¡ ¼±¾ðÇÏ°í °´Ã¼ ÁÖ¼Ò¸¦ ¹Þ¾Æ¼­

¸â¹öÇÔ¼ö¸¦ ÄݹéÇÔ¼ö¿¡ µî·ÏÇ϶ó°í Çϴµ¥ main ¿ÜºÎ¿¡¼­ º¯¼ö°¡ ¼±¾ðµÇ¾î ÀÖ¾î ÂòÂòÇϳ׿ä.

ÇöÀç´Â ÄݹéÇÔ¼ö¸¦ cÇÔ¼ö ó·³ ¿ÜºÎ¿¡ ¼±¾ðÇؼ­ µî·ÏÇسù´Âµ¥ ¾ê³×µéÀ» ¸â¹öÇÔ¼ö·Î ¿Å±â°í ½Í½À´Ï´Ù.


ÄÚµå(ù¹ø° Ä¿¹ÔÀº, ÇöÀç »ç¿ëÁßÀÎ ¹æ¹ý, µÎ¹ø°´Â ¸â¹öÇÔ¼ö¸¦ ÄݹéÀ¸·Î ¶§·Á³õ°í ¿À·ù ³²)
https://github.com/ppd0523/rgrongTest

ÄݹéÇÔ¼ö µî·Ï
scheduler.cpp:310¶óÀÎ - scheduler_main
scheduler.cpp:305¶óÀÎ - sigact_handler

µµ¿ÍÁÖ¼¼¿ä ÄÚ¸Û´Ô

Àâ´ã | 1135¸íÀÌ Àоú¾î¿ä. 3.15.174.76

0
1 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-23 21:59:21
void Scheduler::scheduler_main(void *arg){
auto _this = (scheduler*)arg;
_this->foo();
}

void Scheduler::start(){
...
rt_task_start(&_scheduler, scheduler_main, this);
}
2 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-23 22:03:53
1 rt_task_start µÎ¹ø° ÀÎÀÚ°¡ staticÇÑ ÇÔ¼ö¸¸ °¡´ÉÇØ¿ä
3 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-23 22:05:40
staticÀ¸·Î ÇϽöõ ¶æÀÔ´Ï´Ù.
rt_task_startÀÇ ·¹ÆÛ·±½º¸¦ ã¾Æº¸¼¼¿ä.
4 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-24 12:20:01
À­ºÐ ¸»¾¸´ë·Î static ¸â¹öÇÔ¼ö·Î ¸¸µéµÇ, ÀÎÀÚ·Î this Æ÷ÀÎÅ͸¦ ¹Þ¾Æ¼­ ó¸®ÇÏ¸é µË´Ï´Ù.
5 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-24 18:31:44
4 ¾ÆÇÏ. ¹«½¼ÄÚµçÁö ÇÑÂü °øºÎÇÏ°íÀÖ¾ú¾î¿ä °¨»çÇÕ´Ï´Ù
6 ºñ°ø°³ ¼Õ´Ô ¡¦ 2017-05-27 09:47:27
function, bind, placeholder¸¦ »ç¿ëÇÏ´Â ¹æ¹ýµµ ÀÖ½À´Ï´Ù.
´ñ±ÛÀ» ÀÛ¼ºÇÏ½Ç ¼ö ¾ø½À´Ï´Ù.
(±ÇÇÑÀÌ ¾ø´Â ȸ¿ø·¹º§)
¸ñ·ÏÀ¸·Î
ÀÌ¿ë¾à°ü | ±¤°í/Á¦ÈÞ | °³ÀÎÁ¤º¸Ãë±Þ¹æħ | ¹®ÀÇ/½Å°í | ¸ð¹ÙÀÏ TE31 | ¼­¹ö ºÎÇÏ : 12%
½Ç½Ã°£ Issue Ä¿¹Â´ÏƼ TE31 [¾ËÁö·Õ] ¨Ï 2002-2024
TOP arrow_upward