| title | IHttpServer::IncrementThreadCount Method |
|---|---|
| description | Describes the IHttpServer::IncrementThreadCount method and details its syntax, parameters, return value, remarks, code example, and requirements. |
| ms.date | 10/07/2016 |
| ms.assetid | 6e59d669-1eae-b7a2-debb-de86ca8f5017 |
Increments the thread count for the thread pool.
virtual VOID IncrementThreadCount(
VOID
) = 0; This method takes no parameters.
VOID.
The IncrementThreadCount method increases count of available threads for the thread pool by a single thread. The count will not exceed the maximum limit for the thread pool of 256 threads.
Note
IncrementThreadCount does not actually increase the number of threads in use; only the thread count is affected.
When you are developing an HTTP module that performs operations that require a long time to process, your HTTP module could call IncrementThreadCount to increase the available threads for the thread pool while your module executes your long-running operations. When the module is finished, it would call IIHttpServer::DecrementThreadCount to restore the thread count.
The following code example demonstrates how to create an HTTP module that calls IncrementThreadCount to increase the thread count for the thread pool and then sleeps for 30 seconds. The module then calls DecrementThreadCount to restore the thread count and exits.
[!code-cppIHttpServerIncrementThreadCount#1]
Your module must export the RegisterModule function. You can export this function by creating a module definition (.def) file for your project, or you can compile the module by using the /EXPORT:RegisterModule switch. For more information, see Walkthrough: Creating a Request-Level HTTP Module By Using Native Code.
You can optionally compile the code by using the __stdcall (/Gz) calling convention instead of explicitly declaring the calling convention for each function.
| Type | Description |
|---|---|
| Client | - IIS 7.0 on [!INCLUDEwinvista] - IIS 7.5 on Windows 7 - IIS 8.0 on Windows 8 - IIS 10.0 on Windows 10 |
| Server | - IIS 7.0 on [!INCLUDEwinsrv2008] - IIS 7.5 on Windows Server 2008 R2 - IIS 8.0 on Windows Server 2012 - IIS 8.5 on Windows Server 2012 R2 - IIS 10.0 on Windows Server 2016 |
| Product | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 - [!INCLUDEiisexp75], [!INCLUDEiisexp80], [!INCLUDEiisexp100] |
| Header | Httpserv.h |
IHttpServer Interface
IHttpServer::DecrementThreadCount Method