#include
#include
#include
#include
#include

#define NUM 2

void thread(void arg)
{
int i;
DIR
dir = NULL;
struct dirent ptr = (struct dirent )calloc(1, sizeof(struct dirent));
struct dirent *result = NULL;

for (i=0;i<1;i++) {
    printf ("in thread:%d\n", (int)arg);
    dir = opendir("/root/tmp");
    if (!dir) {
        printf("opendir failed\n");
    }

    while ((readdir_r(dir, ptr, &result)==0) && (result != NULL)) {
        printf("name:%s  ", result->d_name);
    }
    printf ("\n");
    closedir(dir);
    sleep (1);
}

}

int main(void)
{
pthread_t id[NUM];
int i,ret;

for (i=0;i

}