Sponsored Content
Full Discussion: C - Freeing resources
Top Forums Programming C - Freeing resources Post 302306718 by pludi on Monday 13th of April 2009 03:32:03 PM
Old 04-13-2009
You can't free an statically allocated variable (like your int test above), not in C nor Java nor C# or any other language. It's always valid until execution leaves the variables scope (usually the containing block or when an object is destroyed).

With malloc(3) you can allocate memory for an array or structure, which you can access via a pointer afterward. When you're done, use free(3) to return that memory to OS control. It's basically "ask the OS for control of a memory segment and return that control afterwards", no need to dispose of anything.

In C++ you'll use new and delete instead of malloc and free.
 

8 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Who is using up all of my resources?!

For some reason, I'm having a bit of a brain fart here and cannot think of a simple solution to this problem... We have a samba server installed on one of our Darwin boxes. Someone is doing massive amounts of work through a samba share, and in turn in pegging samba and the box. I can see how... (1 Reply)
Discussion started by: fender177
1 Replies

2. UNIX for Dummies Questions & Answers

Freeing up a serial port with a modem connected

I currently access a remote Unix server which has an external modem connected to one of it's serial ports (/dev/cua/b). At times, this server undergoes a hard reset and for some reason this disallows us from making use of the modem any longer. A hard reset of the modem always seems to fix the... (0 Replies)
Discussion started by: ebender1
0 Replies

3. Solaris

CPU resources

Hi, I got a solarsi 10 box with 9 zones and the cpu shares as following ID NAME SHARES 0 global 1 1 FMW1 100 2 FMW2 100 3 OID1 100 4 OID2 100 5 OVD1 100 6 OID0 100 7 FMW5 100 8... (2 Replies)
Discussion started by: fugitive
2 Replies

4. UNIX for Dummies Questions & Answers

Trouble freeing memory after ctrl+D

Hello, I am trying to free memory allocation after EOF from keyboard is detected (ctrl+D) in a C program. I've written a small program to replicate my problem: int main(int argc, char *argv) { char *line; line = (char*)malloc(sizeof(char)*(512)); line = fgets(line, 512,... (1 Reply)
Discussion started by: oddworld
1 Replies

5. Programming

Trouble freeing memory after ctrl+D

Hello, I am trying to free memory allocation after EOF from keyboard is detected (ctrl+D) in a C program. I've written a small program to replicate my problem: int main(int argc, char *argv) { char *line; line = (char*)malloc(sizeof(char)*(512)); line = fgets(line, 512,... (10 Replies)
Discussion started by: oddworld
10 Replies

6. Boot Loaders

Bootloader Resources

Here is a list of resources for Unix and GNU/Linux bootloaders: GRUB Legacy: The original GRand Unified Bootloader. Now known as GRUB Legacy. GRUB: The latest and greatest. More commonly known as GRUB2. BRUG: Brand-new Universal loadeR from GRUB. Based on GRUB. Adds features like new object... (0 Replies)
Discussion started by: fpmurphy
0 Replies

7. Shell Programming and Scripting

Freeing the terminal from busy shell script?

Hi guys, I wrote a basic inotifywait shell script on my CentOS 5.6 x86_64 test server that syncs any deleted files in a directory. /usr/bin/script #!/bin/sh inotifywait -m -e delete /home/user/test | while read file; do # log event here done The script alone works fine. However, the... (4 Replies)
Discussion started by: TECK
4 Replies

8. UNIX for Dummies Questions & Answers

UNIX Openserver ver 5.0 freeing up space.

:)Hi all, Please advice me is it safer to use the following command to free up (truncate) space in HDD. 1) > /usr/adm/messages 2) > /usr/adm/sulog 3) > /usr/adm/ctlog 4) > /tmp 5) > /usr/adm/sa 6) > /var/spool Thanks in advance Rukshan (1 Reply)
Discussion started by: rukshan4u2c
1 Replies
TORRUS_COLLECTOR(8)						      torrus						       TORRUS_COLLECTOR(8)

NAME
collector - Torrus data Collector. SYNOPSIS
torrus collector --tree=TREENAME [options...] DESCRIPTION
This command starts the Collector process for the tree TREENAME. By default it forks into a daemon, sets the log output file to /var/log/torrus/collector.TREENAME.log, performs one Collector cycle, and sleeps until the next cycle is scheduled. In daemon mode the log file can be reopened by sending it a SIGHUP signal. Collector cycle scheduling is controlled by two parameters defined for each individual configuration leaf: "collector-period" and "collector-timeoffset". See the Torrus Configuration Guide for more details. The number of OID (Object IDentifier) variable bindings sent by Collector is controlled by the datasource parameter "snmp-oids-per-pdu". It is set to a default value of 40 in snmp-defs.xml, and may be overwritten at the host level. OPTIONS
--instance=N Defines the collector instance. A single tree can allow more than one collector instance. The number of instances is defined in "run" hash in the torrus-siteconfig.pl's %Torrus::Global::treeConfig. If the number of instances is more than one, this option is mandatory. The collecting job is split between the instances, and normally all instances should be started by the startup scripts. The tree should be re-compiled after the number of instances is changed in the siteconfig. In the example below the tree tree_A will be served by three collector instances: %Torrus::Global::treeConfig = ( 'tree_A' => { 'description' => 'The First Tree', 'xmlfiles' => [qw(a1.xml a2.xml a3.xml)], 'run' => { 'collector' => 3, 'monitor' => 1 } }, ); --nodaemon Prevents the process from becoming a daemon and sets the log to STDERR. --runonce Instructs the collector to run once and exit. Implies --nodaemon. --runalways Instructs the collector process to continue running even if no collector datasources are defined in the tree. In this case, the process will check once per hour if the configuration has changed. --debug Sets the log level to debug. --verbose Sets the debug level to info. --help Displays a help message. FILES
/etc/torrus/conf/torrus-siteconfig.pl Torrus site configuration script. /var/log/torrus/collector.TREENAME.log Collector's log for the tree TREENAME. /usr/share/torrus/xmlconfig/snmp-defs.xml Basic variable definitions for the SNMP collector. SEE ALSO
torrus(8) NOTES
See more documentation at Torrus home page: http://torrus.org AUTHOR
Stanislav Sinyagin <ssinyagin@yahoo.com> torrus 2.03 2013-07-26 TORRUS_COLLECTOR(8)
All times are GMT -4. The time now is 09:16 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy