Question: When using IOCP, if I call `WSASend()`, do I have to wait for the notification to arrive before making another call to it, or can I call it multiple times before receiving any notification, for example is something like this allowed:

```
WSASend();

// Call it again without waiting for notification of previous call
WSASend();

// Call it again without waiting for notification of previous call
WSASend();

```

Answer: 
That is because your if-condition to load the cascade is not logic:

Yours is:

```
   if (face_cascade.load(face_cascade_name))
    {
        cout << "\n Error loading " << endl;
    }

    if (eye_cascade.load(eyes_cascade_name))
    {
        cout << "\n Error Loading " << endl;
    }

```

But it should be:

```
    if (!face_cascade.load(face_cascade_name))
    {
        cout << "\n Error loading " << endl;
    }

    if (!eye_cascade.load(eyes_cascade_name))
    {
        cout << "\n Error Loading " << endl;
    }

```

You forget the '!' in the conditions.
`face_cascade.load(face_cascade_name)` obviously returns FALSE when classifier successfully loaded. You can find it in one of the samples provided with OpenCV library `facedetect.cpp`
This is why you don't see that the loading process failed and you provided wrong path to haarcascade file.