printf("ho_tari\n");

Thread1 본문

Raspberry Pi

Thread1

호타리 2023. 10. 5. 16:49

<main.c>

#include <stdio.h>
#include <pthread.h>
#include <unistd.h>

void* thread_main(void *arg)
{
    int i;
    int cnt = *((int*)arg);

    for (i = 0; i < cnt; i++)
    {
        sleep(1); puts("running thread\n");
    }

    return NULL;
}

int main(int argc, char *argv[])
{
    pthread_t t_id;
    int thread_param = 5;

    if (pthread_create(&t_id, NULL, thread_main, (void*)&thread_param) != 0)
    {
        puts("pthread_create() error\n");
        return -1;
    }

    sleep(7); puts("end of main\n");

    return 0;
}

<compile 결과>

 

<task.json>

{
    "tasks": [
        {
            "type": "cppbuild",
            "label": "C/C++: gcc build active file",
            "command": "/usr/bin/gcc",
            "args": [
                "-fdiagnostics-color=always",
                "-g",
                "${file}",
                "-o",
                "${fileDirname}/${fileBasenameNoExtension}",
                "-lwiringPi",
                "-lpthread"
            ],
            "options": {
                "cwd": "${fileDirname}"
            },
            "problemMatcher": [
                "$gcc"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "detail": "Task generated by Debugger."
        }
    ],
    "version": "2.0.0"
}

pthread를 사용하기 위해 json파일에 "-lpthread" 추가

'Raspberry Pi' 카테고리의 다른 글

Thread3  (0) 2023.10.06
Thread2  (0) 2023.10.06
SWITCH_LED_INTERRUPT  (0) 2023.10.05
LED_ON_OFF  (0) 2023.10.05
카카오톡으로 일기예보 메세지 보내기 (python)  (0) 2023.09.22