⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 heap_3.c

📁 modbus开发程序包
💻 C
字号:
/*

	FreeRTOS.org V4.1.1 - Copyright (C) 2003-2006 Richard Barry.



	This file is part of the FreeRTOS.org distribution.



	FreeRTOS.org is free software; you can redistribute it and/or modify

	it under the terms of the GNU General Public License as published by

	the Free Software Foundation; either version 2 of the License, or

	(at your option) any later version.



	FreeRTOS.org is distributed in the hope that it will be useful,

	but WITHOUT ANY WARRANTY; without even the implied warranty of

	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the

	GNU General Public License for more details.



	You should have received a copy of the GNU General Public License

	along with FreeRTOS.org; if not, write to the Free Software

	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA



	A special exception to the GPL can be applied should you wish to distribute

	a combined work that includes FreeRTOS.org, without being obliged to provide

	the source code for any proprietary components.  See the licensing section 

	of http://www.FreeRTOS.org for full details of how and when the exception

	can be applied.



	***************************************************************************

	See http://www.FreeRTOS.org for documentation, latest information, license 

	and contact details.  Please ensure to read the configuration and relevant 

	port sections of the online documentation.

	***************************************************************************

*/





/*

 * Implementation of pvPortMalloc() and vPortFree() that relies on the

 * compilers own malloc() and free() implementations.

 *

 * This file can only be used if the linker is configured to to generate

 * a heap memory area.

 *

 * See heap_2.c and heap_1.c for alternative implementations, and the memory

 * management pages of http://www.FreeRTOS.org for more information.

 */



#include <stdlib.h>



#include "FreeRTOS.h"

#include "task.h"



/*-----------------------------------------------------------*/



void *pvPortMalloc( size_t xWantedSize )

{

void *pvReturn;



	vTaskSuspendAll();

	{

		pvReturn = malloc( xWantedSize );

	}

	xTaskResumeAll();



	return pvReturn;

}

/*-----------------------------------------------------------*/



void vPortFree( void *pv )

{

	if( pv )

	{

		vTaskSuspendAll();

		{

			free( pv );

		}

		xTaskResumeAll();

	}

}







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -