diff --git a/MagickCore/draw.c b/MagickCore/draw.c
index f874ab5..79f1e76 100644
--- a/MagickCore/draw.c
+++ b/MagickCore/draw.c
@@ -1169,8 +1169,7 @@
   image_view=AcquireAuthenticCacheView(image,exception);
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
   #pragma omp parallel for schedule(static) shared(status) \
-    if ((height*width) > 8192) \
-      num_threads(GetMagickResourceLimit(ThreadResource))
+    IsConcurrentDos(width,height,64)
 #endif
   for (y=start; y <= stop; y++)
   {
@@ -3262,8 +3261,7 @@
   image_view=AcquireAuthenticCacheView(image,exception);
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
   #pragma omp parallel for schedule(static) shared(status) \
-    if ((height*width) > 8192) \
-      num_threads(GetMagickResourceLimit(ThreadResource))
+    IsConcurrentDos(width,height,64)
 #endif
   for (y=bounding_box.y; y < (ssize_t) bounding_box.height; y++)
   {
@@ -3876,8 +3874,7 @@
       stop=(ssize_t) floor(bounds.y2+0.5);
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
       #pragma omp parallel for schedule(static) shared(status) \
-        if ((height*width) > 8192) \
-          num_threads(GetMagickResourceLimit(ThreadResource))
+        IsConcurrentDos(width,height,64)
 #endif
       for (y=start; y <= stop; y++)
       {
@@ -3940,8 +3937,7 @@
   stop=(ssize_t) floor(bounds.y2+0.5);
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
   #pragma omp parallel for schedule(static) shared(status) \
-    if ((height*width) > 8192) \
-      num_threads(GetMagickResourceLimit(ThreadResource))
+    IsConcurrentDos(width,height,64)
 #endif
   for (y=start; y <= stop; y++)
   {