📄 main.c
字号:
#include <stdio.h>
#include <stdlib.h>
#include <glib.h>
#include "iConfig.h"
#include "kernel/os.h"
#include "kernel/thread.h"
#include "src/tests/itests.h"
#include "src/tests/queue_test.h"
void prvThreadEx(void *);
#define NUM_OF_PRTOC 3
int main(int argc, char *argv[])
{
printf ("starting OS Example\r\n");
int i;
/*
for (i = 0;i < NUM_OF_PRTOC;i++) {
ithread_create(NULL,prvThreadEx,(void *) i,
iRTOS_MINIMAL_STACK_SIZE, 1+1,0);
}
*/
/**create tests*/
itest_create ();
//queue_tests_create (2);
//proto_net_test_create(1);
iRTOS_scheduler_start();
printf ("\r\n");
return 0;
}
GenItem test_list_item;
GenListIterator resource=&test_list_item;
extern volatile iTCB *thisTCB;
// void prvThreadEx(void * some )
// {
// int i;
//
// printf ("\r\n");
// for (i = 0;i < 5;i++){
// printf ("\r\nthread OS Example !%u!%u",(int)some,i);
// GTimeVal tmp_time;
//
// g_get_current_time (&tmp_time);
// printf ("\r\n Time %u:%u",tmp_time.tv_sec,tmp_time.tv_usec);
// thread_yield ();
// thread_wait (((int)some+1)*1000,0);
// // g_usleep (1000*300);
// //ithread_wait_on (NULL,2*1000,0);
// //ithread_wait_on (resource,-5,0);
// }
// if (1 == 1) {
// // ithread_wait_on (NULL,6*1000,0);
// }
// if ((int)some == 1) {
// printf ("\r\nWaint %X",thisTCB);
// printf ("\r\nWaint ret %X",thread_wait_on (resource,-5,0));
//
// }
// if ((int)some == 0) {
// printf ("\r\nSignal %X",thisTCB);
// printf ("\r\nSignal ret%X",thread_signal (resource));
// }
// printf ("\r\ndeleting %X",thisTCB);
// ithread_delete (NULL);
// }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -