|
The .net framework provides a queue(of T) which is fine for single-threaded programs, but is not thread-safe. There's a synchronized version, but since it uses locking it runs the risk of priority inversion and other such problems.
I've implemented a fairly simple queueing implementation in VB.net with the following properties:
-1- There are no locks or waits, except that the calling program may elect to wait for data if the queue is empty.
-2- There are a few spinlock loops, but there is no possibility of livelock since each loop will only spin if another thread successfully performed useful work while the loop was executing.
-3- Conceptually, the base queue object does not hold data, but is a place to attach reader objects. Data which is written to a queue will be queued in all reader objects.
As an example situation where this class could be used, think of a multi-line chat BBS. There's a central message queue for all broadcast messages; when a new user logs in, a queue reader is created for that user, attached to the central queue. Whenever a message needs to be broadcast (either a user typed something, or the system wants to report something) it is placed in the queue, where it can be read by all attached readers. Data can be added and removed by any number of different threads without need for synchronization.
I've never written an article for CP before (and haven't done a whole lot with VB), but I think the class seems like it should be useful; I would appreciate feedback and advice (e.g. should I allow the user to receive a WaitHandle from a queue reader, so as to allow the use of WaitAny? If so, can I prevent the user from doing anything with it other than wait?) Would anyone be interested if I were to write up such a thing?
|
|
|
|
|
If you think the class is useful, chances are someone else will too. If nothing else, writing the article will be good experience.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
[ Blog][ Articles][ Forum Guidelines] Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
|
|
|
|
|
Any Sharepoint experts out there who can give some examples of using this WebControl? Googling this topic (and SPMenuField) seems to almost exclusively point back to this[^] - which is fine - except that I'd like a deeper understanding of what is happening 'under the hood'. MSDN docs are virtually non-existent...
An article would be lovely!
|
|
|
|
|
It is hard to read some useful here because there are lots of off-topic posts.
Could you delete all them to make this forum more readable?
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: It is hard to read some useful here because there are lots of off-topic posts.
Including this one.
Jaime Olivares wrote: Could you delete all them to make this forum more readable?
Seriously, while I agree that there are a lot of off-topic posts I think a better way to manage them is needed instead of deleting them.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
Of course you have to delete this too
A move-to-other-forum option would be a better feature, I have seen this feature in some other forums like Experts-Exchange. Moderators use to move the question because some members don't post to the proper area.
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: Of course you have to delete this too
Yep, and now your post and my response.
Jaime Olivares wrote: A move-to-other-forum option would be a better feature, I have seen this feature in some other forums like Experts-Exchange. Moderators use to move the question because some members don't post to the proper area.
I actually suggested [^] that, along with a few other features, right after my original response.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
There is a warning in some Forum Pages: "DO NOT POST PROGRAMMING QUESTIONS HERE", but not in this one.
DISCLAIMER: You should delete this post after reading because it is off-topic
Best regards,
Jaime.
|
|
|
|
|
Jaime Olivares wrote: There is a warning in some Forum Pages: "DO NOT POST PROGRAMMING QUESTIONS HERE", but not in this one.
Yes, but despite the warning, it still happens.
Jaime Olivares wrote: DISCLAIMER: You should delete this post after reading because it is off-topic
True, but it would have been better to say that this message will self-destruct in 5 seconds.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
Why not delete the previous off-topic articles right now? I guess the authors don't matter.
Best regards,
Jaime.
|
|
|
|
|
But my life would be an empty shell if I didn't get to ask people to stop posting in the wrong forums. That's all that there is left in the hollow abyss that is my life.
|
|
|
|
|
I guess you can have a more sophisticated life-style by moving off-topic posts to the proper forum.
Best regards,
Jaime.
|
|
|
|
|
Thank you for bringing meaning to my pitiful existence.
|
|
|
|
|
Pete O'Hanlon wrote: my life would be an empty shell if I didn't get to ask people to stop posting in the wrong forums
And that would take all the fun out of it
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hello,
I'm what you may call a newbie,
I just want to know if it is possible to make a WYSIWYG RTF Control in VB.
my but is to make a real WordProcessor application,
I deed start it but it is not WYSIWYG, it will be lovely to make a Word like program in VB
Any ideas howTo ???
|
|
|
|
|
gillardg wrote: hello,
I'm what you may call a newbie,
I just want to know if it is possible to make a WYSIWYG RTF Control in VB.
my but is to make a real WordProcessor application,
I deed start it but it is not WYSIWYG, it will be lovely to make a Word like program in VB
Any ideas howTo ???
1. Don't post a programming question in this forum.
2. Read the title of the forum and reflect on why you shouldn't have asked it here.
3. Choose a development task that isn't leap years ahead of your skill level.
4. Start small, and don't run before you can walk.
|
|
|
|
|
gillardg wrote: I'm what you may call a newbie
I guess so. You posted in the wrong forum. VB forum would be better. Writing a word processor application is a pretty tall order for a newbie. I suggest learning little bits before jumping into something big like a word processor.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
The rle compressed data is 1, 4, 3, 9, 5, 3, 2, 7, 0. The program currently just prints all these values except the terminating zero. When properly decompressed, the output should be:
4 9 9 9 3 3 3 3 3 7 7
yet i cannot get it to do so.....
this is my code......I managed to get it to find the number of times yet not produce them as i need which is this
4 9 9 9 3 3 3 3 3 7 7
; rle_soln.asm
; sample program to demonstrate decompressing RLE
include 'emu8086.inc'
org 100h ; set location counter to 100h
jmp CodeStart
DataStart:
; this is the run length encoded data
; notice that it is a list of words (bytes)
; with a zero on the end
rleData dw 1, 4, 3, 9, 5, 3, 2, 7, 0
space db ' ', 0
CodeStart:
; put the address of the first rle value in bx
mov bx, offset rleData
; start a loop that will visit each value in rle data
LoopStart:
; compare value in list with zer0
cmp [bx], 0
; if value was zero, must be end of list so quit
je EndLabel
; move value in list to ax
mov ax, [bx]
; print it
call print_num
; print a space
mov si, offset space
call print_string
; add 2 bytes to the address in bx to move to the
; next value in the list
add bx, 2
; continue the loop until a zero is found
jmp LoopStart
EndLabel:
ret
DEFINE_PRINT_STRING
DEFINE_SCAN_NUM
DEFINE_PRINT_NUM
DEFINE_PRINT_NUM_UNS
Please Email me with an edit to this to show me where my alteration nees to be...
|
|
|
|
|
This forum is for posting article ideas or requests, not for general purpose help. You would do better to ask this question in one of the programming forums. The other thing to keep in mind is that you are asking a question about assembly code, so you may get limited responses. Also, please don't ask for private answers to a public question.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
This is my code, i cannot seem to get it to run two line running from the same point can someone edit this with notation as to where i needed to make my changes.
Please Email me with a solution please....
; video.asm
; uses interrupts to set video mode and draw a line
include 'emu8086.inc'
org 100h ; set location counter to 100h
jmp CodeStart
DataStart:
xStart dw 50 ; x coordinate of line start
yStart dw 50 ; y coordinate of line start
length dw 25 ; length of line
CodeStart:
; set the video mode 320x200, 256 colors
mov al, 13h
mov ah, 0
int 10h
; initialize cx (x coord) to xStart + length
mov cx, xStart
add cx, length
; loop from (xStart+length) to xStart to draw a horizontal line
LoopStart:
; draw a pixel
; set color in al, x in cx, y in dx
mov al, 50
mov dx, yStart
; set sub function value in ah to draw a pixel
; and invoke the interrupt
mov ah, 0ch
int 10h
mov dx, yStart
add dx,length
; decrement the x coord
sub cx, 1
; test to see if x coord has reached start value
cmp cx, xStart
; continue loop if cx >= xStart
jae LoopStart
ret
|
|
|
|
|
This forum is for posting article ideas or requests, not for general purpose help. You would do better to ask this question in one of the programming forums. The other thing to keep in mind is that you are asking a question about assembly code, so you may get limited responses.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
Wrong forum.
Joselito Garcia wrote:
Please Email me with a solution please....
No, it doesn't work like that here.
"The clue train passed his station without stopping." - John Simmons / outlaw programmer
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hi This is RajaGopal from Hyderabad,India
I had gone through a article and please find the url http://www.codeproject.com/KB/edit/editor_in_windows_forms.aspx
My requiremnt is I have to call the same control in webbased .
So I request to suggest me in this scenario.
Thanks & Regards
RajaGopal
|
|
|
|
|
This forum is for posting article ideas or requests, not for general purpose help. You would do better to ask this question in one of the programming forums or in the article's discussion forum.
Scott Dorman Microsoft® MVP - Visual C# | MCPD
President - Tampa Bay IASA
Hey, hey, hey. Don't be mean. We don't have to be mean because, remember, no matter where you go, there you are. - Buckaroo Banzai
[ Forum Guidelines][ Articles][ Blog]
|
|
|
|
|
hi,
i am using dataset.xsd file to talk with databse in my project.
but now its becoming too large and somewhat complex to handle
can anybody suggest me solution to transform this dataset file to something else.
thanks & Regards
|
|
|
|
|