C (81/207)

From:Alastair M. Robinson
Date:11 Dec 99 at 20:55:03
Subject:Multithreading + gfx cards

From: "Alastair M. Robinson" <blackfive@fakenhamweb.co.uk>

Hi everyone,

I'm still working towards adding multithreading to a project of mine.
My program can have an unlimited number of windows open on its custom
screen. A single IDCMP port is created by the main task, and injected into
the window structure after it's created.

My question is this: Is it legal or safe to have the window opened by a
sub-task, but closed later by the main task, or vice-versa?

The possible sequences of events are as follows:

1 - Main task spawns subtask. Subtask loads an image, and if successful,
opens a window. Subtask exits. Window is closed later by the main task.

2 - Main task opens window, then spawns subtask. Subtask loads an image
and closes window if unsuccessful. Subtask exits. Window is closed by main
task.

3 - Main task opens window, then spawns subtask. Subtask loads an image
and if unsuccessful, signals main task, which closes window.

Method 1 is the easiest to retro-fit to my program, but is it safe?

In the meantime, would anyone be prepared to test my program on a graphics
card?

So far I've written display code for AGA 2-8 plane, 6 & 8 plane HAM, LUT
CyberGfx and 24-bit CyberGfx, but I don't have a graphics card, so can't
test the CGFX code!

Send me a private mail if you'd be willing to try it out for me, and don't
mind receiving a 100k lzx archive by email.

All the best,



Alastair M. Robinson, email:blackfive@fakenhamweb.co.uk
Amiga 4000/030, 18Meg RAM, 4.3Gig HD, Mustek ScanExpress 6000SP
C, Assembler (68k + PIC16C84), PostScript, ARexx, AMOSPro(!), AmigaDOS

The Light at the End of the Tunnel Could be a flame thrower.