SENDSIG(3PVM)

πŸ“¦ version 3.4.6, in debian bookworm, ubuntu jammy

πŸ’Œ SENDSIG(3PVM) β€” the pvm_sendsig page, bestie edition

okay so you're in the PVM Version 3.4 docs, and today's main character is pvm_sendsig, a routine that slides a signal into another PVM process's DMs. very "hey bestie, heads up" energy. let's go πŸ’…


✨ NAME ✨

pvm_sendsig β€” sends a signal to another PVM process. that's it, that's the whole vibe 🫢


✨ SYNOPSIS ✨

C bestie:

int info = pvm_sendsig( int tid, int signum )

Fortran bestie:

call pvmfsendsig( tid, signum, info )

✨ PARAMETERS ✨

  • tid β€” an integer task identifier of the PVM process that's gonna receive the signal. like, the address you're sending the πŸŽ€ to.
  • signum β€” integer signal number. the actual signal. no cap.
  • info β€” the integer status code the routine hands back to you. the receipts, basically.

✨ DESCRIPTION ✨

so pvm_sendsig sends the signal number signum to the PVM process identified by tid. slay. if pvm_sendsig is successful, info will be 0. if some error occurs, then info will be < 0. periodt. πŸ’–

⚠️ real talk: pvm_sendsig should only be used by programmers with Unix signal handling experience. this is not a beginner-friendly little guy. many library functions β€” and in fact the PVM library functions themselves β€” cannot be called in a signal handler context, because they do not mask signals or lock internal data structures. so like… be careful, fr fr. 😭

further caveat (yes, another one, sorry πŸ₯²): the signal numbers passed between systems are not mapped β€” PVM assumes that signal 9 on one system is the same as on another. it's giving "trust me bro" but it's literally the documented behavior. πŸ’€


✨ EXAMPLES ✨

C:

tid = pvm_parent();
info = pvm_sendsig( tid, SIGKILL);

Fortran:

CALL PVMFBUFINFO( BUFID, BYTES, TYPE, TID, INFO );
CALL PVMFSENDSIG( TID, SIGNUM, INFO )

✨ ERRORS ✨

these error conditions can be returned by pvm_sendsig πŸ‘‡

  • PvmSysErr β€” pvmd not responding. it's ghosting you. πŸ™ˆ
  • PvmBadParam β€” giving an invalid tid value. wrong address, bestie. 🚫

✨ SEE ALSO ✨

…and that's the whole list. nothing here. an empty section, iconic in its own minimal way ✨ (the footer below is all that's left.)


okay that's the page!! this lil tutorial came from the PVM Version 3.4 manual, dated 30 August, 1993 β€” yes, 1993, a whole vintage moment πŸ¦‹ β€” so go forth, send your signals responsibly, and remember: only if you already know Unix signal handling. bye bestie, mwah πŸ’…βœ¨

πŸ“¦ where this page comes from