Sure..

When a login script is configured to run synchronously, it will prevent the user's desktop from appearing until the script completes. This has the appearance of "taking longer to log in", but assures that all network resources are available before the user can begin working.

In an asynchronous environment, the login script runs at the same time that the desktop appears. If the login script takes a long time to run (common in slow WAN links, scripts with lots of GUI output, or simply those with ineffecient logic), the user can actually launch an application before network resources are available.

If you perform any type of client machine or environment customization, this could also be aborted or affected by the user launching applications before the environment is properly prepared.

My login script makes 21 resource decisions and complete processing of 15 active resources (disk, printer, message, and script) including 3 external commands in about 6-7 seconds on the LAN, and 12-15 seconds on a 256K frame-relay connection. If I had 50 "resource decisions", it would mean that there are 50 resources available to be mapped. Each needs to be evaluated, but only some that meet user, group, site, or OU criteria are actually mapped. There are lots of permutations, resulting in a lot of processing in a small amount of time. It gives the perception of a fast login, even in synchronous mode.

In your example, you are not only mixing resources, but resource types. If a user is a member of both groups, your logic will process both. This might map/unmap/remap unless you are careful.

I treat each resource separately. eg - I have a printer "X", it's at this UNC location, and the people in these groups or OUs should connect to it.
I assume that everyone can use the resource, then try to find ways to block it..
Are you in the group? If not, I'm done - NEXT! If you are, ok, lets check other qualifiers.
Are you in the OU? If not, I'm done - NEXT! If you are, then exit, since there are no more qualification tests.

I do that for each resource. I might start out with 50 resources, but after deciding that a user doesn't deserve to access certain ones, I end up with a list of 10-15 resources that I can just process - quickly.

Most of the decision process happens behind the scenes. A message pops up and we process the resource qualifiers. By the time the user has read the first of 3 lines of greeting, we're mapping the resources.

Glenn
_________________________
Actually I am a Rocket Scientist! \:D