target.c   [plain text]


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dlfcn.h>
#include <unistd.h>
#include <mach/mach.h>



int main(int argc, const char* argv[])
{
    //fprintf(stderr, "target starting\n");
    usleep(1000);
    // load and unload in a loop
    for (int i=1; i < 10000; ++i) {
        void* h = dlopen("./libfoo.dylib", 0);
        usleep(100000/(i*100));
        dlclose(h);
    }
    //fprintf(stderr, "target done\n");

    return 0;
}