pvmfgetcontext man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

CONTEXT(3PVM)			PVM Version 3.4			 CONTEXT(3PVM)

NAME
       pvm_newcontext - Request new context.
       pvm_setcontext - Change context.
       pvm_freecontext - Free existing context.
       pvm_getcontext - Get current context.

SYNOPSIS
       C    int ctx = pvm_newcontext( void )
	    int old_ctx = pvm_setcontext( int new_ctx )
	    int info = pvm_freecontext( ctx )
	    int ctx = pvm_getcontext( void )

       Fortran
	    call pvmfnewcontext( ctx )
	    call pvmfsetcontext( new_ctx, old_ctx )
	    call pvmffreecontext( ctx, info )
	    call pvmfgetcontext( ctx )

PARAMETERS
       ctx
	      Context value.

       new_ctx
	      New context value.

       old_ctx
	      Prior context value.

       info
	      Result code.

DESCRIPTION
       The  context  functions	provide	 a  system-wide unique context and the
       means to manipulate this context.

       Contexts provide the ability for communicating tasks  to	 automatically
       differentiate  messages by the context in which they were sent.	Thus a
       message sent in context A by the sender must be received in  context  A
       by the recipient.  A sender may send in any context.  However, a recip‐
       ient will not accept a message sent in a context that differs from  its
       own.

       One  such  use  of  contexts is with library routines.  Using contexts,
       library routine inter-communication may be logically seperated from the
       user's  application inter-communication. This will prevent the inadver‐
       tent receipt of one another's messages.

       Spawned tasks inherit the spawn-time context of their parent.  Existing
       PVM applications work unchanged using the default context.

       pvm_newcontext  returns	a  newly allocated context.  However, this new
       context is not yet active.

       pvm_setcontext changes the current context from old_ctx to new_ctx.

       pvm_freecontext frees ctx so that it may be  reused.   Contexts	are  a
       system resource that will be exhausted if not recycled.

       pvm_getcontext returns the current context of the requesting task.

EXAMPLES
       /* parent task with context */
	    int cc, context0, context1;
	    char buf[25];

	    context0 = pvm_getcontext();       /*  get my current context */
	    context1 = pvm_newcontext();       /*  get a new context */
	    pvm_setcontext(context1);	       /*  set my context to new context */
	    printf("My context is: %d", context1);
	    pvm_spawn("child", (char**)0, PvmTaskDefault, "", 1, &tid);
	    cc = pvm_recv(-1, -1);	       /*  receive message from child - in context1 */
	    pvm_upkstr(buf);
	    printf("%s", buf);
	    pvm_setcontext(context0);	       /*  reset my context to my original context0 */

       /* child task with context - child inherits parent's context as default */
	    int context;
	    int ptid;
	    char buf[25];

	    ptid = pvm_parent();
	    context = pvm_getcontext();	       /*  get my current context */
	    sprintf(buf, "Greetings from child who's context is: %d.", context);
	    pvm_initsend(PvmDataDefault);
	    pvm_pkstr(buf);
	    pvm_send(ptid, 1);

ERRORS
       Only  system  resource  errors will be returned as the context programs
       themselves do not generate errors.

SEE ALSO
				 8 April, 1997			 CONTEXT(3PVM)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net