|
All thread functions DataAccessThreading() are accessing the same global data and they don't know which instance of the thread they are. So the first thread to check eventShutdown[ShutThreadIndex] which see it and behave as requested.
I would wrap:
static CWinThread *multthreads[MAX_CONNECTIONS];
static CEvent m_eventShutdown[MAX_CONNECTIONS];
static HANDLE hShutDown[MAX_CONNECTIONS];
static int shutdownWait[MAX_CONNECTIONS];
static int ShutThreadIndex;
in a class and create an array of these. The pass the array instance address into the DataAccessThreading() function. Each thread knows which intance it is and only needs to check its specific eventShutdown.
Neville Franks, Author of ED for Windows www.getsoft.com and coming soon: Surfulater www.surfulater.com
|
|
|
|
|
Dear Franks,
THANX A LOT.
I was literally struggling with this. I'll try as per your suggestion. Incase of need i'll trouble(SORRY 4 that) again.
Moreover i was having a doubt that whether i am going in the right direction.So your reply helps me a lot.
THANX A LOT
Yours
Sujan
|
|
|
|
|
Dear Franks,
I tried by creating a class and used it as you have said, still getting the same problem. Do you have any sample code, which does this. If you do have, will you please post it. I am in deep trouble.
SORRY FOR DISTURBING YOU AGAIN.
if the code is too large you can send it to my mail id also
AWAITING YOUR REPLY
Yours
Sujan
|
|
|
|
|
Hello,
I started a multithreaded application a few weeks ago and I find this[^] class extremely usefull.
Your code would look like this:
<br />
CThread threads[maxsize];<br />
threads[4].Stop();
Hope this helps..
Multiply it by infinity and take it beyond eternity and you'll still have no idea about what I'm talking about.
|
|
|
|
|
Hi Bob,
Just now only i saw your reply. Thanx, i'll go through the article.
Sujan
|
|
|
|
|
What data and how are the threads processing the data?
Kuphryn
|
|
|
|
|
Hello Friends,
I want to change the back ground color of the edit box at the time of initialization only. Even though i had used SetBkColor() and the SetBkMode() I couldn't able to change the color of the edit box.
Please help.
Thank you,
Neelesh J Jain.
|
|
|
|
|
Hello,
my mfc application is performing a time consuming operation.
Before this I want to prompt the user with an approximate estimate of the execution time.
For this my idea was to execute some (eg 100) cycles, get the elapsed time
and multiply this for the number of total needed executions.
In MATLAB (for MATLAB users) it would be a simple tic - toc command.
Is there something similar for VC++?
Or do you have an idea for another approach?
Thanks,
Marco.
|
|
|
|
|
|
marcomars wrote:
my mfc application is performing a time consuming operation.
Estimations aside, can you put this time-consuming operation in a separate thread? That way, no matter how long it takes or how off your estimations are, your main UI thread is not being blocked and remains responsive.
"When I was born I was so surprised that I didn't talk for a year and a half." - Gracie Allen
|
|
|
|
|
Hi,
My program needs to take a pointer to BYTE array (unsigned char*) and convert it into a STL list so that each BYTE in the array has its own element in the list, i.e. if the array has hundred bytes then the list needs to have a hundred entries, at present when I try to do this each element in my list points to the entire BYTE array, when what I really need is copies of each single BYTE in its own part of the list.
Does anyone know how I can do this?
cheers,
Andy
|
|
|
|
|
You could have something like
std::list<char> m_STLList;
for (int nByteCount = 0; nByteCount < entries_in_array; nByteCount++)
{
char* pByte = (pByteArray + nByteCount);
m_STLList.push_back(*pByte);
}
Hope this helps
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Williams (Little Britain)
|
|
|
|
|
cheers Ant for your reply. Unfortunatly when I use:
char* pByte = (pByteArray + nByteCount);
all I get is pByte pointing to the actual data in memory instead of making a copy of that particular byte.
Andy,
|
|
|
|
|
It is the line that adds it to the list that makes the copy (notice the *pByte)
m_STLList.push_back(*pByte);
if you like it can be changed to
char Byte = *(pByteArray + nByteCount);
m_STLList.push_back(Byte);
or
char Byte = pByteArray[nByteCount];
m_STLList.push_back(Byte);
Ant.
I'm hard, yet soft. I'm coloured, yet clear. I'm fruity and sweet. I'm jelly, what am I? Muse on it further, I shall return! - David Williams (Little Britain)
|
|
|
|
|
Hi Ant,
I see what you mean now (I'm being a bit dense today! )
|
|
|
|
|
Code short and fast:
BYTE* byte_array;<br />
std::list<char> char_list;<br />
char_list.assign(byte_array, byte_array + number_of_entries_in_byte_array);
Robert-Antonio
"A flower walked around a meadow. She saw a beautiful human
and plucked off his head."
|
|
|
|
|
Hello friendz,
I am new member of this site.
i wish to develop new embedding project in VC++.
i want clear idea about How can i do it?.
Like Switch on lights using VC++ Program.
Please Give ideas...........
Thanking you.
Benedict
|
|
|
|
|
for this first you have to made electronic circutt that work on databit send vc++ applications.
because using software you can only give command rest of thing must be handle by machine or circutt.
then go for it???
-----------------------------
"I Think It Will Help"
-----------------------------
Alok Gupta
visit me at http://www.thisisalok.tk
|
|
|
|
|
Hai...
i am doing my project in vc++.
I have echo problem and noise problem in my voice chat.I am recording the sound using WaveIn devices
only and play back using Waveout devices.
I record the sound and compress it using ADPCM compression and send it.But i have some echo problem
and noise problem. I tried out some of the functions in Waveform but i can reduce it.
Can some one help me to reduce the problem
or give suggestion regarding this.
Can any one point out the reason for this problem.
This chat works very well in LAN but when we go for Internet all these occurs..
Kindly help me.
Thank u In advance.
M.Kailasam
|
|
|
|
|
Any tool used for memory leak detection works slowly with bitmaps since bitmaps require a lot of memory allocation and deallocation. I use BoundsChecker from Compuware. Can someone suggest a faster tool which scans memory faster? Thanks in advance.
Dipeka.A.J
|
|
|
|
|
|
Hello,
I have a CFormView.I need a menu for my child window seperately. Since MDI child windows cannot have menu of their own, I had to find a workaround solution to this. So on my view I attached a dialog which has a menu. When I click on view,
the dialog appears to be grayed, but when clicked on dialog the menu
appears to be enabled. The same is the case with view, it appears to
be grayed when clicked on dialog(i.e menu on dialog). Is there any way
to make the dialog appear as enabled always irrespective of the focus
on it?
can anyone please help me to solve this?
Thanks
Madhavi
|
|
|
|
|
Hi all out there... i have a little problem with using DirecShow..
i got errors like the those shown below.. is there any1 who know how to debug it?
KNN error LNK2001: unresolved external symbol _CLSID_AudioCompressorCategory
KNN error LNK2001: unresolved external symbol _CLSID_FileWriter
KNN error LNK2001: unresolved external symbol _CLSID_FilterGraph
KNN error LNK2001: unresolved external symbol _CLSID_SystemDeviceEnum
KNN error LNK2001: unresolved external symbol _IID_IAMStreamConfig
KNN error LNK2001: unresolved external symbol _IID_IBaseFilter
KNN error LNK2001: unresolved external symbol _IID_ICreateDevEnum
KNN error LNK2001: unresolved external symbol _IID_IFileSinkFilter
KNN error LNK2001: unresolved external symbol _IID_IGraphBuilder
KNN error LNK2001: unresolved external symbol _IID_IMediaControl
KNN error LNK2001: unresolved external symbol _IID_IMediaEvent
The document from DirectShow says that Strmiids.lib are used to exports
Tks
|
|
|
|
|
hi,
i am creating a video chat program . it's work very well in lan.but in wan (internet) the video data displayed not clear (previous and current video frames(data) are display same time(mixing) . i want to solve the proplem.i am using SOCK_STREAM,send ,recv methods and also using compression algorithm.plz help me and tell me any ideo to create video chat through internet .
Thank you.
This allows you to set your preferences for the discussion boards
|
|
|
|
|
Hello,
I have a problem in my MFC project with a CFileDialog.
I use it to open multiple files, just to get the files' size, and my code is something like this:
CString str;
POSITION pos;
CFileDialog ldFile(TRUE,"avi", NULL, OFN_ALLOWMULTISELECT | OFN_HIDEREADONLY, "AVI Files (*.avi)|*.avi|All Files (*.*)|*.*||", this);
int ret = ldFile.DoModal();
if(ret == IDOK)
{
pos = ldFile.GetStartPosition();
while(pos)
{
str = ldFile.GetNextPathName(pos);
if (stat(str , &results) == 0) // The size of the file in bytes is in results.st_size
files_size[files_count] = results.st_size;
files_count++;
}
}
What I observed is that I can open only a limited number of files
(the number is smaller when files are larger): if I try anyway to
load more files, no file is loaded and
the function returns 2 instead of 1 as usual.
Can anyone help me solve this issue?
Thanks in advance,
Marco.
|
|
|
|